Navigation
API > API/Runtime > API/Runtime/GeometryCore
Augments B-Spline interface
| Name | TPolyBezierSpline |
| Type | class |
| Header File | /Engine/Source/Runtime/GeometryCore/Public/Splines/PolyBezierSpline.h |
| Include Path | #include "Splines/PolyBezierSpline.h" |
Syntax
template<typename VALUETYPE>
class TPolyBezierSpline :
public UE::Geometry::Spline::TBSpline< VALUETYPE, 3 > ,
private UE::Geometry::Spline::TSelfRegisteringSpline< TPolyBezierSpline< VALUETYPE >, VALUETYPE >
Inheritance Hierarchy
- TSelfRegisteringSpline → TBSpline → TPolyBezierSpline
- TSelfRegisteringSpline → TPolyBezierSpline
Implements Interfaces
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Splines/PolyBezierSpline.h | |||
TPolyBezierSpline
(
const ValueType& P0, |
Splines/PolyBezierSpline.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~TPolyBezierSpline() |
Splines/PolyBezierSpline.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| Base | TBSpline< VALUETYPE, 3 > | Splines/PolyBezierSpline.h | |
| FWindow | typename Base::FWindow | Splines/PolyBezierSpline.h | |
| ValueType | Base::ValueType | Splines/PolyBezierSpline.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| LastEvaluatedSegment | int32 | This is the last segment fetched by parameter. Used to accelerate predictable sampling patterns. | Splines/PolyBezierSpline.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AddBezierSegments
(
const TArray< ValueType >& Points, |
Adds multiple Bezier segments to the spline. | Splines/PolyBezierSpline.h | |
int32 AppendBezierSegment
(
const ValueType& P1, |
Appends a Bezier segment using only 3 points (P1, P2, P3) The start point (P0) is automatically inferred from the last point of the previous segment. | Splines/PolyBezierSpline.h | |
ValueType EvaluateDerivative
(
float Parameter |
Evaluate nth derivative at parameter | Splines/PolyBezierSpline.h | |
float FindNearestOnSegment
(
const ValueType& Point, |
Splines/PolyBezierSpline.h | ||
int32 FindSegmentIndex
(
float Parameter, |
Splines/PolyBezierSpline.h | ||
void FlipSegment
(
int32 Segment |
Splines/PolyBezierSpline.h | ||
int32 GetNumDistinctSegments() |
Gets the number of segments defined by distinct knots | Splines/PolyBezierSpline.h | |
int32 InsertBezierSegment
(
float Parameter, |
Inserts a Bezier segment at the specified parameter | Splines/PolyBezierSpline.h | |
int32 InsertPoint
(
float Parameter, |
Inserts a point at the specified parameter along the spline. | Splines/PolyBezierSpline.h | |
int32 InsertPointAtPosition
(
int32 SegmentIndex, |
Inserts a point at the closest location on a segment to the given position. | Splines/PolyBezierSpline.h | |
int32 InsertPointAtSegmentParam
(
int32 SegmentIndex, |
Inserts a point at a specific segment with local parameter. | Splines/PolyBezierSpline.h | |
bool MapGlobalParameterToLocalSegment
(
float GlobalParam, |
Maps a global parameter to a segment index and local parameter | Splines/PolyBezierSpline.h | |
float MapLocalSegmentParameterToGlobal
(
int32 SegmentIndex, |
Maps a local segment parameter [0,1] to global parameter space | Splines/PolyBezierSpline.h | |
int32 PrependBezierSegment
(
const ValueType& P0, |
Prepends a Bezier segment using only 3 points (P0, P1, P2) The end point (P3) is automatically inferred from the first point of the existing spline. | Splines/PolyBezierSpline.h | |
bool RemovePoint
(
int32 PointIndex |
Removes a point from the spline. | Splines/PolyBezierSpline.h | |
bool RemoveSegment
(
const int32 SegmentIndex |
Removes a Bezier segment from the spline | Splines/PolyBezierSpline.h | |
void SetClosedLoopFlag
(
bool bClosed |
Sets the closed loop flag without modifying segments | Splines/PolyBezierSpline.h | |
bool SetControlPoints
(
const TArray< ValueType >& Points, |
MANIPULATION METHODS Replaces all control points in the spline with the provided points. | Splines/PolyBezierSpline.h | |
| Splines/PolyBezierSpline.h | |||
bool UpdateSegment
(
int32 SegmentIndex, |
Updates all control points of a Bezier segment at once | Splines/PolyBezierSpline.h | |
bool UpdateSegmentPoint
(
const int32 SegmentIndex, |
Updates a single control point within a Bezier segment | Splines/PolyBezierSpline.h |
Overridden from TBSpline
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual int32 FindIndexForParameter
(
float Parameter, |
Find the control point index and local parameter for global parameter. | Splines/PolyBezierSpline.h | |
virtual int32 GetExpectedNumKnots() |
Splines/PolyBezierSpline.h | ||
virtual float GetParameter
(
int32 Index |
Returns parameter value for a control point index using Greville Abscissae. | Splines/PolyBezierSpline.h | |
virtual void Reparameterize
(
EParameterizationPolicy Mode |
Parameterization methods. | Splines/PolyBezierSpline.h | |
virtual int32 SetParameter
(
int32 Index, |
Parameterization methods. | Splines/PolyBezierSpline.h |
Overridden from TSplineInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual float FindNearest
(
const ValueType& Point, |
Finds the nearest parameter value to a point | Splines/PolyBezierSpline.h |
Overridden from ISplineInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void Clear() |
ISplineInterface Implementation. | Splines/PolyBezierSpline.h | |
virtual TUniquePtr< ISplineInterface > Clone() |
Splines/PolyBezierSpline.h | ||
virtual FString GetImplementationName() |
Splines/PolyBezierSpline.h | ||
virtual int32 GetNumberOfSegments() |
Returns the number of Bezier segments in the spline | Splines/PolyBezierSpline.h | |
virtual FInterval1f GetParameterSpace() |
Splines/PolyBezierSpline.h | ||
virtual FInterval1f GetSegmentParameterRange
(
int32 SegmentIndex |
Maps a segment index to its parameter range | Splines/PolyBezierSpline.h | |
virtual FSplineTypeId::IdType GetTypeId() |
Default implementation of type ID (derived classes should override) | Splines/PolyBezierSpline.h | |
virtual void SetClosedLoop
(
bool bShouldClose |
Splines/PolyBezierSpline.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TPolyBezierSpline< ValueType > CreateCircle
(
const ValueType& Center, |
Create a complete circle. | Splines/PolyBezierSpline.h | |
static TPolyBezierSpline< ValueType > CreateCircleArc
(
const ValueType& Center, |
Create a circular arc with given center, radius, and angle range. | Splines/PolyBezierSpline.h | |
static TPolyBezierSpline CreateDefault() |
Factory method to create an empty spline with a default segment | Splines/PolyBezierSpline.h | |
static TPolyBezierSpline< ValueType > CreateEllipse
(
const ValueType& Center, |
Create an ellipse with X and Y radii. | Splines/PolyBezierSpline.h | |
static TPolyBezierSpline< ValueType > CreateLine
(
const ValueType& Start, |
Static factory methods for common shapes Create a straight line between two points | Splines/PolyBezierSpline.h | |
static int32 GetDegree() |
Evaluator methods. | Splines/PolyBezierSpline.h | |
static FString GetSplineTypeName() |
Splines/PolyBezierSpline.h | ||
static const FSplineTypeId::IdType & GetStaticTypeId() |
Generate compile-time type ID for PolyBezier. | Splines/PolyBezierSpline.h |