Splines.
More...
#include <math/gzmath.hh>
void AddPoint 
( 
const Vector3 & 
_pt  ) 

Adds a control point to the end of the spline.
 Parameters

Clears all the points in the spline.
Vector3 GetPoint 
( 
unsigned int 
_index  ) 
const 
Gets the detail of one of the control points of the spline.
 Parameters

[in]  _index  the control point index 
 Returns
 the control point, or [0,0,0] and a message on the error stream
unsigned int GetPointCount 
( 
 ) 
const 
Gets the number of control points in the spline.
 Returns
 the count
Vector3 GetTangent 
( 
unsigned int 
_index  ) 
const 
Get the tangent value for a point.
 Parameters

[in]  _index  the control point index 
double GetTension 
( 
 ) 
const 
Get the tension value.
 Returns
 The value of the tension, which is between 0.0 and 1.0
Vector3 Interpolate 
( 
double 
_t  ) 
const 
Returns an interpolated point based on a parametric value over the whole series.
 Parameters

[in]  _t  parameter (range 0 to 1) 
Vector3 Interpolate 
( 
unsigned int 
_fromIndex, 


double 
_t 

) 
 const 
Interpolates a single segment of the spline given a parametric value.
 Parameters

[in]  _fromIndex  The point index to treat as t = 0. fromIndex + 1 is deemed to be t = 1 
[in]  _t  Parametric value 
Recalculates the tangents associated with this spline.
void SetAutoCalculate 
( 
bool 
_autoCalc  ) 

Tells the spline whether it should automatically calculate tangents on demand as points are added.
 Parameters

[in]  _autoCalc  If true, tangents are calculated for you whenever a point changes. If false, you must call reclacTangents to recalculate them when it best suits. 
void SetTension 
( 
double 
_t  ) 

Set the tension parameter.
A value of 0 = CatmullRom spline.
 Parameters

[in]  _t  Tension value between 0.0 and 1.0 
void UpdatePoint 
( 
unsigned int 
_index, 


const Vector3 & 
_value 

) 
 
Updates a single point in the spline.
 Parameters

[in]  _index  the control point index 
[in]  _value  the new position 
when true, the tangents are recalculated when the control point change
Tension of 0 = CatmullRom spline, otherwise a Cardinal spline.
The documentation for this class was generated from the following file: