18struct FNurbsCurveData;
65 ECurve CurveType = GetCurveType();
68 FEntityGeom::Serialize(Ar);
89 return EEntity::Curve;
112 virtual double GetLength(
double Tolerance)
const;
130 EvaluatePoint(Coordinate,
OutPoint);
150 Evaluate2DPoint(Coordinate,
OutPoint);
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ensureCADKernel(InExpression)
Definition Types.h:115
#define NOT_IMPLEMENTED
Definition Message.h:107
Definition SharedPointer.h:692
Definition CADKernelArchive.h:19
bool IsSaving() const
Definition CADKernelArchive.h:113
FCurve(const FLinearBoundary &InBounds, int8 InDimension=3)
Definition Curve.h:38
virtual void EvaluatePoint(double Coordinate, FCurvePoint &OutPoint, int32 DerivativeOrder=0) const
Definition Curve.h:118
virtual FVector2d Evaluate2DPoint(double Coordinate) const
Definition Curve.h:147
void FindNotDerivableCoordinates(int32 DerivativeOrder, TArray< double > &OutNotDerivableCoordinates) const
Definition Curve.h:190
int32 GetDimension() const
Definition Curve.h:82
virtual ECurve GetCurveType() const =0
TCache< double > GlobalLength
Definition Curve.h:26
FCurve(int8 InDimension=3)
Definition Curve.h:31
virtual EEntity GetEntityType() const override
Definition Curve.h:87
virtual void ExtendTo(const FVector2d &DesiredPosition)
Definition Curve.h:233
double GetUMin() const
Definition Curve.h:94
virtual FVector EvaluatePoint(double Coordinate) const
Definition Curve.h:127
FLinearBoundary Boundary
Definition Curve.h:27
int8 Dimension
Definition Curve.h:29
void Presample(TArray< double > &OutSampling, double Tolerance) const
Definition Curve.h:201
virtual void Serialize(FCADKernelArchive &Ar) override
Definition Curve.h:60
virtual void Evaluate2DPoint(double Coordinate, FCurvePoint2D &OutPoint, int32 DerivativeOrder=0) const
Definition Curve.h:138
virtual void Evaluate2DPoint(double Coordinate, FVector2d &OutPoint) const
Definition Curve.h:158
virtual void ExtendTo(const FVector &DesiredPosition)
Definition Curve.h:222
const FLinearBoundary & GetBoundary() const
Definition Curve.h:104
virtual void Offset(const FVector &OffsetDirection)=0
virtual TSharedPtr< FEntityGeom > ApplyMatrix(const FMatrixH &InMatrix) const override=0
double GetUMax() const
Definition Curve.h:99
Definition EntityGeom.h:15
Definition CADEntity.h:56
Definition CADEntity.cpp:23
EEntity
Definition CADEntity.h:18
ECurve
Definition GeoEnum.h:10
double Max
Definition Boundary.h:24
double Min
Definition Boundary.h:23
Definition NURBSCurve.h:10