UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::CADKernel::TPolyline< PointType > Class Template Reference

#include <Polyline.h>

+ Inheritance diagram for UE::CADKernel::TPolyline< PointType >:

Public Member Functions

 TPolyline (const TArray< PointType > &InPoints, const TArray< double > &InCoordinates)
 
 TPolyline (const TArray< PointType > &InPoints)
 
 TPolyline ()
 
void Serialize (FCADKernelArchive &Ar)
 
PointType ApproximatePoint (double InCoordinate) const
 
void ApproximatePoints (const TArray< double > &InCoordinates, TArray< PointType > &OutPoints) const
 
void GetSubPolyline (const FLinearBoundary &InBoundary, const EOrientation InOrientation, TArray< PointType > &OutPoints) const
 
void UpdateSubPolylineBBox (const FLinearBoundary &InBoundary, FPolylineBBox &OutBBox) const
 
void Sample (const FLinearBoundary &Boundary, const double DesiredSegmentLength, TArray< double > &OutCoordinates) const
 
double GetCoordinateOfProjectedPoint (const FLinearBoundary &Boundary, const PointType &PointOnEdge, PointType &ProjectedPoint) const
 
void ProjectPoints (const FLinearBoundary &InBoundary, const TArray< PointType > &InPointsToProject, TArray< double > &ProjectedPointCoordinates, TArray< PointType > &ProjectedPoints) const
 
const PointType & GetPointAt (int32 Index) const
 
const TArray< PointType > & GetPoints () const
 
const TArray< double > & GetCoordinates () const
 
TArray< double > & GetCoordinates ()
 
void SwapCoordinates (TArray< double > &NewCoordinates)
 
void GetAt (int32 Index, double &Coordinate, PointType &Point)
 
int32 Size () const
 
void Reserve (int32 Number)
 
void Empty (int32 Slack=0)
 
void EmplaceAt (int32 Index, TPolyline< PointType > &Polyline, int32 PointIndex)
 
void RemoveComplementaryPoints (int32 Offset)
 
void Pop ()
 
double GetLength (const FLinearBoundary &InBoundary) const
 

Public Attributes

TArray< doubleCoordinates
 
TArray< PointType > Points
 
TArray< PointType > Tangent
 
TPolylineApproximator< PointType > Approximator
 
bool bWithTangent = false
 

Constructor & Destructor Documentation

◆ TPolyline() [1/3]

template<class PointType >
UE::CADKernel::TPolyline< PointType >::TPolyline ( const TArray< PointType > &  InPoints,
const TArray< double > &  InCoordinates 
)
inline

◆ TPolyline() [2/3]

template<class PointType >
UE::CADKernel::TPolyline< PointType >::TPolyline ( const TArray< PointType > &  InPoints)
inline

◆ TPolyline() [3/3]

template<class PointType >
UE::CADKernel::TPolyline< PointType >::TPolyline ( )
inline

Member Function Documentation

◆ ApproximatePoint()

template<class PointType >
PointType UE::CADKernel::TPolyline< PointType >::ApproximatePoint ( double  InCoordinate) const
inline

◆ ApproximatePoints()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::ApproximatePoints ( const TArray< double > &  InCoordinates,
TArray< PointType > &  OutPoints 
) const
inline

◆ EmplaceAt()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::EmplaceAt ( int32  Index,
TPolyline< PointType > &  Polyline,
int32  PointIndex 
)
inline

◆ Empty()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::Empty ( int32  Slack = 0)
inline

Empties the polyline.

Parameters
Slack(Optional) The expected usage size after empty operation. Default is 0.

◆ GetAt()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::GetAt ( int32  Index,
double Coordinate,
PointType &  Point 
)
inline

◆ GetCoordinateOfProjectedPoint()

template<class PointType >
double UE::CADKernel::TPolyline< PointType >::GetCoordinateOfProjectedPoint ( const FLinearBoundary Boundary,
const PointType &  PointOnEdge,
PointType &  ProjectedPoint 
) const
inline

◆ GetCoordinates() [1/2]

template<class PointType >
TArray< double > & UE::CADKernel::TPolyline< PointType >::GetCoordinates ( )
inline

◆ GetCoordinates() [2/2]

template<class PointType >
const TArray< double > & UE::CADKernel::TPolyline< PointType >::GetCoordinates ( ) const
inline

◆ GetLength()

template<class PointType >
double UE::CADKernel::TPolyline< PointType >::GetLength ( const FLinearBoundary InBoundary) const
inline

◆ GetPointAt()

template<class PointType >
const PointType & UE::CADKernel::TPolyline< PointType >::GetPointAt ( int32  Index) const
inline

◆ GetPoints()

template<class PointType >
const TArray< PointType > & UE::CADKernel::TPolyline< PointType >::GetPoints ( ) const
inline

◆ GetSubPolyline()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::GetSubPolyline ( const FLinearBoundary InBoundary,
const EOrientation  InOrientation,
TArray< PointType > &  OutPoints 
) const
inline

◆ Pop()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::Pop ( )
inline

◆ ProjectPoints()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::ProjectPoints ( const FLinearBoundary InBoundary,
const TArray< PointType > &  InPointsToProject,
TArray< double > &  ProjectedPointCoordinates,
TArray< PointType > &  ProjectedPoints 
) const
inline

◆ RemoveComplementaryPoints()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::RemoveComplementaryPoints ( int32  Offset)
inline

◆ Reserve()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::Reserve ( int32  Number)
inline

Reserves memory such that the polyline can contain at least Number elements.

Parameters
NumberThe number of elements that the polyline should be able to contain after allocation.

◆ Sample()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::Sample ( const FLinearBoundary Boundary,
const double  DesiredSegmentLength,
TArray< double > &  OutCoordinates 
) const
inline

◆ Serialize()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::Serialize ( FCADKernelArchive Ar)
inline

◆ Size()

template<class PointType >
int32 UE::CADKernel::TPolyline< PointType >::Size ( ) const
inline
Returns
the size of the polyline i.e. the count of points.

◆ SwapCoordinates()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::SwapCoordinates ( TArray< double > &  NewCoordinates)
inline

◆ UpdateSubPolylineBBox()

template<class PointType >
void UE::CADKernel::TPolyline< PointType >::UpdateSubPolylineBBox ( const FLinearBoundary InBoundary,
FPolylineBBox OutBBox 
) const
inline

The FPolylineBBox is updated by adding all the points of the polyline included in the boundary

Member Data Documentation

◆ Approximator

template<class PointType >
TPolylineApproximator<PointType> UE::CADKernel::TPolyline< PointType >::Approximator

◆ bWithTangent

template<class PointType >
bool UE::CADKernel::TPolyline< PointType >::bWithTangent = false

◆ Coordinates

template<class PointType >
TArray<double> UE::CADKernel::TPolyline< PointType >::Coordinates

◆ Points

template<class PointType >
TArray<PointType> UE::CADKernel::TPolyline< PointType >::Points

◆ Tangent

template<class PointType >
TArray<PointType> UE::CADKernel::TPolyline< PointType >::Tangent

The documentation for this class was generated from the following file: