Spline for rotations.
More...
#include <ignition/math/RotationSpline.hh>
ignition::math::RotationSpline::RotationSpline |
( |
| ) |
|
Constructor. Sets the autoCalc to true.
ignition::math::RotationSpline::~RotationSpline |
( |
| ) |
|
Destructor. Nothing is done.
void ignition::math::RotationSpline::AddPoint |
( |
const Quaterniond & |
_p | ) |
|
Adds a control point to the end of the spline.
- Parameters
-
void ignition::math::RotationSpline::AutoCalculate |
( |
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 ignition::math::RotationSpline::Clear |
( |
| ) |
|
Clears all the points in the spline.
Quaterniond ignition::math::RotationSpline::Interpolate |
( |
double |
_t, |
|
|
bool |
_useShortestPath = true |
|
) |
| |
Returns an interpolated point based on a parametric value over the whole series.
- Parameters
-
[in] | _t | Parametric value. |
[in] | _useShortestPath | Defines if rotation should take the shortest possible path |
- Returns
- the rotation
Quaterniond ignition::math::RotationSpline::Interpolate |
( |
unsigned int |
_fromIndex, |
|
|
double |
_t, |
|
|
bool |
_useShortestPath = true |
|
) |
| |
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 |
[in] | _useShortestPath | Defines if rotation should take the shortest possible path |
- Exceptions
-
- Returns
- the rotation
const Quaterniond& ignition::math::RotationSpline::Point |
( |
unsigned int |
_index | ) |
const |
Gets the detail of one of the control points of the spline.
- Parameters
-
[in] | _index | the index of the control point. |
- Exceptions
-
- Returns
- a quaternion (out of bound index result in assertion)
unsigned int ignition::math::RotationSpline::PointCount |
( |
| ) |
const |
Gets the number of control points in the spline.
- Returns
- the count
void ignition::math::RotationSpline::RecalcTangents |
( |
| ) |
|
Recalculates the tangents associated with this spline.
void ignition::math::RotationSpline::UpdatePoint |
( |
unsigned int |
_index, |
|
|
const Quaterniond & |
_value |
|
) |
| |
Updates a single point in the spline.
- Parameters
-
[in] | _index | index |
[in] | _value | the new control point value |
- Exceptions
-
bool ignition::math::RotationSpline::autoCalc |
|
protected |
Automatic recalcultation of tangeants when control points are updated.
std::vector<Quaterniond> ignition::math::RotationSpline::points |
|
protected |
std::vector<Quaterniond> ignition::math::RotationSpline::tangents |
|
protected |
The documentation for this class was generated from the following file: