Castle Game Engine: CastleCurves: Class TSmoothInterpolatedCurve

# Class TSmoothInterpolatedCurve
Description | Hierarchy | Fields | Methods | Properties
## Unit CastleCurves ## Declaration `type TSmoothInterpolatedCurve = class(TInterpolatedCurve)` ## Description Warning: this symbol is deprecated: Rendering of TSmoothInterpolatedCurve is not portable to OpenGLES (that is: Android and iOS) and not very efficient. For portable and fast curves consider using X3D NURBS nodes (wrapped in a TCastleScene) instead. 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 TComponent T3D TCurve TControlPointsCurve TInterpolatedCurve TSmoothInterpolatedCurve ## Overview ### Methods
| `function CreateConvexHullPoints: TVector3SingleList; override;`
| `procedure DestroyConvexHullPoints(Points: TVector3SingleList); override;`
| `function Point(const t: Float): TVector3Single; override;`
| `function ToRationalBezierCurves(ResultOwnsCurves: boolean): TRationalBezierCurveList;`
| `procedure UpdateControlPoints; override;`
| `class function NiceClassName: string; override;`
| `constructor Create(AOwner: TComponent); override;`
| `destructor Destroy; override;`
## Description ### Methods
| `function CreateConvexHullPoints: TVector3SingleList; override;`
| `procedure DestroyConvexHullPoints(Points: TVector3SingleList); override;`
| `function Point(const t: Float): TVector3Single; override;`
| `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(AOwner: TComponent); override;`
| `destructor Destroy; override;`
Generated by PasDoc 0.13.0 on 2015-06-15 04:43:09