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 InValueType>
class TPolyBezierSpline :
public UE::Geometry::Spline::TBSpline< InValueType, 3 > ,
private UE::Geometry::Spline::TSelfRegisteringSpline< TPolyBezierSpline< InValueType >, InValueType >
Inheritance Hierarchy
- TSelfRegisteringSpline → TBSpline → TPolyBezierSpline
- TSelfRegisteringSpline → TPolyBezierSpline
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Splines/PolyBezierSpline.h | |||
TPolyBezierSpline
(
const FAnchor& Start, |
Splines/PolyBezierSpline.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~TPolyBezierSpline() |
Splines/PolyBezierSpline.h |
Structs
| Name | Remarks |
|---|---|
| FAnchor | TPolyBezierSpline consists of an arbitrary number of anchor points. |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| Base | TBSpline< ValueType, 3 > | Splines/PolyBezierSpline.h | |
| FFindWindowOverride | void(*)(FWindow &, int32, const FInterval1f &, FWindowStore &) | Splines/PolyBezierSpline.h | |
| FWindow | typename Base::FWindow | Splines/PolyBezierSpline.h | |
| FWindowStore | typename Base::FWindowStore | Splines/PolyBezierSpline.h | |
| ValueType | InValueType | Splines/PolyBezierSpline.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| Degree | int32 | Splines/PolyBezierSpline.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| FindWindowOverrideFn | FFindWindowOverride | Optional override for FindWindow | Splines/PolyBezierSpline.h | |
| LastEvaluatedSegment | int32 | This is the last segment fetched by parameter. Used to accelerate predictable sampling patterns. | Splines/PolyBezierSpline.h | |
| LoopKnotDelta | float | Length of the closing segment’s parameter interval. | Splines/PolyBezierSpline.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
int32 AppendAnchor
(
const FAnchor& InAnchor, |
Splines/PolyBezierSpline.h | ||
int32 AppendAnchor
(
const FAnchor& InAnchor, |
Splines/PolyBezierSpline.h | ||
void AppendAnchors
(
const TArray< FAnchor >& InAnchors, |
Splines/PolyBezierSpline.h | ||
ValueType EvaluateDerivative
(
float Parameter |
Evaluate nth derivative at parameter | Splines/PolyBezierSpline.h | |
float FindNearestOnSegment
(
const ValueType& Point, |
Splines/PolyBezierSpline.h | ||
void FlipSegment
(
int32 Segment |
Splines/PolyBezierSpline.h | ||
ValueType GetAnchorPoint
(
int32 AnchorIndex |
Splines/PolyBezierSpline.h | ||
void GetBezierIndices
(
int32 SegmentIndex, |
Splines/PolyBezierSpline.h | ||
const ValueType & GetHandleInOfAnchor
(
int32 AnchorIdx |
Splines/PolyBezierSpline.h | ||
const ValueType & GetHandleOutOfAnchor
(
int32 AnchorIdx |
Splines/PolyBezierSpline.h | ||
int32 GetNumAnchorPoints () |
Anchor points are unique segment endpoints. | Splines/PolyBezierSpline.h | |
int32 InsertAnchor
(
const FAnchor& InAnchor, |
Per-anchor structural inserts | Splines/PolyBezierSpline.h | |
float MapLocalSegmentParameterToGlobal
(
int32 SegmentIndex, |
Maps a local segment parameter [0,1] to global parameter space | Splines/PolyBezierSpline.h | |
float PointDistanceSqToSegmentBBox
(
const ValueType& Point, |
Splines/PolyBezierSpline.h | ||
float PointDistanceSqToSegmentBBox
(
const ValueType& Point, |
Splines/PolyBezierSpline.h | ||
float PointDistanceSqToSegmentBBox
(
const ValueType& Point, |
Splines/PolyBezierSpline.h | ||
int32 PrependAnchor
(
const FAnchor& InAnchor, |
Splines/PolyBezierSpline.h | ||
int32 PrependAnchor
(
const FAnchor& InAnchor, |
Splines/PolyBezierSpline.h | ||
bool RemoveAnchor
(
int32 PointIndex |
Removes a point from the spline. | Splines/PolyBezierSpline.h | |
void SetAnchorPoint
(
int32 AnchorIndex, |
Splines/PolyBezierSpline.h | ||
void SetAnchors
(
const TArray< FAnchor >& InAnchors, |
Splines/PolyBezierSpline.h | ||
void SetFindWindowOverride
(
FFindWindowOverride Fn |
Splines/PolyBezierSpline.h | ||
void SetHandleInOfAnchor
(
int32 AnchorIdx, |
Splines/PolyBezierSpline.h | ||
void SetHandleOutOfAnchor
(
int32 AnchorIdx, |
Per-anchor setters/getters | Splines/PolyBezierSpline.h | |
bool SplitSegment
(
int32 SegmentIndex, |
Split a segment using De Casteljau. | Splines/PolyBezierSpline.h |
Public Virtual
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 | ||
| Knot vector management. | Splines/PolyBezierSpline.h | ||
virtual float GetParameter
(
int32 Index |
Gets the parameter value for a specific anchor point or the virtual closing point. | Splines/PolyBezierSpline.h | |
virtual void Reparameterize
(
EParameterizationPolicy Mode |
Parameterization methods. | Splines/PolyBezierSpline.h | |
| Sets a custom knot vector using explicit knot/multiplicity pairs | Splines/PolyBezierSpline.h | ||
virtual int32 SetParameter
(
int32 Index, |
Sets the parameter value for a specific anchor control point or the virtual closing point. | 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() |
MANIPULATION METHODS 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 bool Serialize
(
FArchive& Ar |
Serializes the spline | Splines/PolyBezierSpline.h | |
virtual void SetClosedLoop
(
bool bShouldClose |
Splines/PolyBezierSpline.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static int32 AnchorBase
(
int32 i |
Splines/PolyBezierSpline.h | ||
static int32 Close_P0Idx
(
int32 NumAnchors |
Closing | Splines/PolyBezierSpline.h | |
static int32 Close_P1Idx
(
int32 NumAnchors |
Splines/PolyBezierSpline.h | ||
static int32 Close_P2Idx() |
Splines/PolyBezierSpline.h | ||
static int32 Close_P3Idx() |
Splines/PolyBezierSpline.h | ||
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< 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 FString GetSplineTypeName() |
Splines/PolyBezierSpline.h | ||
static const FSplineTypeId::IdType & GetStaticTypeId() |
Generate compile-time type ID for PolyBezier. | Splines/PolyBezierSpline.h | |
static int32 P0Idx
(
int32 s |
Splines/PolyBezierSpline.h | ||
static int32 P1Idx
(
int32 s |
Splines/PolyBezierSpline.h | ||
static int32 P2Idx
(
int32 s |
Splines/PolyBezierSpline.h | ||
static int32 P3Idx
(
int32 s |
Splines/PolyBezierSpline.h |