OGRE 2.1
Object-Oriented Graphics Rendering Engine
|
This class interpolates orientations (rotations) along a spline using derivatives of quaternions. More...
#include <OgreRotationalSpline.h>
Public Member Functions | |
RotationalSpline () | |
~RotationalSpline () | |
void | addPoint (const Quaternion &p) |
Adds a control point to the end of the spline. | |
void | clear (void) |
Clears all the points in the spline. | |
unsigned short | getNumPoints (void) const |
Gets the number of control points in the spline. | |
const Quaternion & | getPoint (unsigned short index) const |
Gets the detail of one of the control points of the spline. | |
Quaternion | interpolate (Real t, bool useShortestPath=true) |
Returns an interpolated point based on a parametric value over the whole series. | |
Quaternion | interpolate (unsigned int fromIndex, Real t, bool useShortestPath=true) |
Interpolates a single segment of the spline given a parametric value. | |
void | recalcTangents (void) |
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. | |
void | updatePoint (unsigned short index, const Quaternion &value) |
Updates a single point in the spline. | |
This class interpolates orientations (rotations) along a spline using derivatives of quaternions.
Ogre::RotationalSpline::RotationalSpline | ( | ) |
Ogre::RotationalSpline::~RotationalSpline | ( | ) |
void Ogre::RotationalSpline::addPoint | ( | const Quaternion & | p | ) |
Adds a control point to the end of the spline.
Gets the number of control points in the spline.
const Quaternion & Ogre::RotationalSpline::getPoint | ( | unsigned short | index | ) | const |
Gets the detail of one of the control points of the spline.
Quaternion Ogre::RotationalSpline::interpolate | ( | Real | t, |
bool | useShortestPath = true |
||
) |
Returns an interpolated point based on a parametric value over the whole series.
t | Parametric value. |
useShortestPath | Defines if rotation should take the shortest possible path |
Quaternion Ogre::RotationalSpline::interpolate | ( | unsigned int | fromIndex, |
Real | t, | ||
bool | useShortestPath = true |
||
) |
Interpolates a single segment of the spline given a parametric value.
fromIndex | The point index to treat as t=0. fromIndex + 1 is deemed to be t=1 |
t | Parametric value |
useShortestPath | Defines if rotation should take the shortest possible path |
Recalculates the tangents associated with this spline.
Tells the spline whether it should automatically calculate tangents on demand as points are added.
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 Ogre::RotationalSpline::updatePoint | ( | unsigned short | index, |
const Quaternion & | value | ||
) |
Updates a single point in the spline.