20template<
typename PolylineType,
typename Po
intType>
240#ifdef DEBUG_CURVE_SAMPLING
277#ifdef DEBUG_CURVE_SAMPLING
291#ifdef DEBUG_CURVE_SAMPLING
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
ElementType Pop(EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:1196
void Empty(SizeType Slack=0)
Definition Array.h:2273
Definition SamplerOnParam.h:185
virtual void EvaluatesNewCandidatePoints() override
Definition SamplerOnParam.h:198
const FCurve & Curve
Definition SamplerOnParam.h:195
FCurveSamplerOnParam(const FCurve &InCurve, const FLinearBoundary &InBoundary, double InMaxSagError, double InMaxParameterizationError, FPolyline3D &OutPolyline)
Definition SamplerOnParam.h:187
virtual void GetNotDerivableCoordinates(TArray< double > &OutNotDerivableCoordinates) override
Definition SamplerOnParam.h:203
double MaxParameterizationError
Definition SamplerOnParam.h:196
virtual void EvaluatePoints(const TArray< double > &Coordinates, TArray< FCurvePoint > &OutPoints, int32 DerivativeOrder=0) const
Definition Curve.cpp:35
void FindNotDerivableCoordinates(int32 DerivativeOrder, TArray< double > &OutNotDerivableCoordinates) const
Definition Curve.h:190
virtual void Evaluate2DPoints(const TArray< double > &Coordinates, TArray< FVector2d > &OutPoints) const
Definition Curve.cpp:68
Definition RestrictionCurve.h:33
Definition SamplerOnParam.h:213
void Set(EIso InIsoType, double InIsoCoordinate, const FLinearBoundary &CurveBounds)
Definition SamplerOnParam.h:224
EIso IsoType
Definition SamplerOnParam.h:348
virtual void EvaluatesNewCandidatePoints() override
Definition SamplerOnParam.h:364
FSurfaceSamplerOnParam(const FSurface &InSurface, const FSurfacicBoundary &InBoundary, double InMaxSagError, double InMaxParameterizationError, FPolyline3D &TemporaryPolyline, FCoordinateGrid &OutSampling)
Definition SamplerOnParam.h:216
const FSurfacicBoundary & SurfaceBoundary
Definition SamplerOnParam.h:339
FCoordinateGrid NotDerivableCoordinates
Definition SamplerOnParam.h:343
bool bNotDerivableFound
Definition SamplerOnParam.h:345
FCoordinateGrid & SurfaceSampling
Definition SamplerOnParam.h:341
TArray< double > IsoCoordinate
Definition SamplerOnParam.h:347
virtual void GetNotDerivableCoordinates(TArray< double > &OutNotDerivableCoordinates) override
Definition SamplerOnParam.h:350
virtual void SamplingInitalizing() override
Definition SamplerOnParam.h:288
const FSurface & Surface
Definition SamplerOnParam.h:338
void Sample(EIso InIsoType)
Definition SamplerOnParam.h:238
virtual void Sample() override
Definition SamplerOnParam.h:232
const FSurfacicBoundary & GetBoundary() const
Definition Surface.h:128
virtual void EvaluatePoints(const TArray< FVector2d > &InSurfacicCoordinates, TArray< FSurfacicPoint > &OutPoint3D, int32 InDerivativeOrder=0) const
Definition Surface.cpp:57
virtual void ValidateUVPoints(TArray< FVector2d > &UVPoints) const
Definition Surface.h:93
virtual void EvaluatePointGrid(const FCoordinateGrid &Coordinates, FSurfacicSampling &OutPoints, bool bComputeNormals=false) const
Definition Surface.cpp:170
virtual void LinesNotDerivables(const FSurfacicBoundary &Bounds, int32 InDerivativeOrder, FCoordinateGrid &OutNotDerivableCoordinates) const
Definition Surface.h:242
double GetIsoTolerance(EIso Iso) const
Definition Surface.h:164
Definition Boundary.h:248
double Length(const EIso &Iso) const
Definition Boundary.h:441
Definition SamplerOnParam.h:134
virtual void EvaluatesNewCandidatePoints() override
Definition SamplerOnParam.h:156
virtual void GetNotDerivableCoordinates(TArray< double > &OutNotDerivableCoordinates) override
Definition SamplerOnParam.h:174
FSurfacicCurveSamplerOnParam(const FSurface &InSurface, const FCurve &InCurve, const FLinearBoundary &InBoundary, double InMaxSagError, double InMaxParameterizationError, FSurfacicPolyline &OutPolyline)
Definition SamplerOnParam.h:143
const FCurve & Curve
Definition SamplerOnParam.h:153
FSurfacicCurveSamplerOnParam(const FRestrictionCurve &InCurve, const FLinearBoundary &InBoundary, double InMaxSagError, double InMaxParameterizationError, FSurfacicPolyline &OutPolyline)
Definition SamplerOnParam.h:136
const FSurface & Surface
Definition SamplerOnParam.h:152
double MaxParameterizationError
Definition SamplerOnParam.h:154
Definition SurfacicPolyline.h:30
Definition SamplerAbstract.h:20
TSamplingPoint EndStudySegment
Definition SamplerAbstract.h:409
void RunSampling()
Definition SamplerAbstract.h:143
double DesiredChordError
Definition SamplerAbstract.h:414
PolylineType & Sampling
Definition SamplerAbstract.h:384
TArray< char > IsOptimalSegments
Definition SamplerAbstract.h:392
TArray< double > NextCoordinates
Definition SamplerAbstract.h:412
FLinearBoundary Boundary
Definition SamplerAbstract.h:381
bool AddIntermediateCoordinates(double UMin, double UMax, int32 PointNum)
Definition SamplerAbstract.h:251
int32 CheckTangentError(const PointType &APoint, double ACoordinate, const PointType &BPoint, double BCoordinate, int32 FirstIndex, int32 EndIndex, int32 InStartSamplingSegmentIndex)
Definition SamplerAbstract.h:334
int32 CountOfNeededPointsToRespectChordError(const PointType &PointA, const PointType &PointB, double ChordError)
Definition SamplerAbstract.h:326
PolylineType CandidatePoints
Definition SamplerAbstract.h:386
int32 StartSamplingSegmentIndex
Definition SamplerAbstract.h:397
Definition SamplerOnParam.h:22
virtual int32 CheckSamplingError(int32 FirstIndex, int32 EndIndex) override
Definition SamplerOnParam.h:59
TSamplerBasedOnParametrizationAndChordError(const FLinearBoundary &InBoundary, double InMaxChordError, double InMaxParameterizationError, PolylineType &OutPolyline)
Definition SamplerOnParam.h:24
double DesiredParameterizationError
Definition SamplerOnParam.h:32
void SubArrayWithoutBoundary(const TArray< double > &InitialArray, const FLinearBoundary &Boundary, double Tolerance, TArray< double > &OutArray)
Definition ArrayUtils.h:154
Definition CADEntity.cpp:23
EIso
Definition GeoEnum.h:66
@ IsoV
Definition GeoEnum.h:68
@ IsoU
Definition GeoEnum.h:67
U16 Index
Definition radfft.cpp:71
Definition GeoPoint.h:103
void Swap(TArray< double > &InUCoordinates, TArray< double > &InVCoordinates)
Definition GeoPoint.h:116
TArray< double > Coordinates[2]
Definition GeoPoint.h:104
double Max
Definition Boundary.h:24
double Min
Definition Boundary.h:23
Definition SurfacicSampling.h:14
int32 Index
Definition SamplerAbstract.h:27
const PolylineType * Polyline
Definition SamplerAbstract.h:26
static UE_FORCEINLINE_HINT double Distance(const TVector< double > &V1, const TVector< double > &V2)
Definition Vector.h:1018