Class TSmoothInterpolatedCurve
Unit
CastleCurves
Declaration
type TSmoothInterpolatedCurve = class(TInterpolatedCurve)
Description
Smooth interpolated curve, each segment (ControlPoints[i]..ControlPoints[i+1]) is converted to a rational Bezier curve (with 4 control points) when rendering.
You can also explicitly convert it to a list of bezier curves using ToRationalBezierCurves.
Here too ControlPoints.Count MAY be 1. (For TControlPointsCurve it must be >= 2)
Hierarchy
Overview
Methods
Description
Methods
 |
function ToRationalBezierCurves(ResultOwnsCurves: boolean): TRationalBezierCurveList; |
convert this to a list of TRationalBezierCurve.
From each line segment ControlPoint[i] ... ControlPoint[i+1] you get one TRationalBezierCurve with 4 control points, where ControlPoint[0] and ControlPoint[3] are taken from ours ControlPoint[i] ... ControlPoint[i+1] and the middle ControlPoint[1], ControlPoint[2] are calculated so that all those bezier curves join smoothly.
All Weights are set to 1.0 (so actually these are all normal Bezier curves; but I'm treating normal Bezier curves as Rational Bezier curves everywhere here)
|
 |
procedure UpdateControlPoints; override; |
|
 |
class function NiceClassName: string; override; |
|
 |
constructor Create(const ATBegin, ATEnd: Float); override; |
|
 |
destructor Destroy; override; |
|
|