Contents User Forum Source Index APIs by Task APIs by Level Data


G3D::UprightSpline Class Reference

Shortest-path linear velocity spline for camera positions. More...

#include <UprightFrame.h>

Inherits G3D::Spline< UprightFrame >.

List of all members.

Public Member Functions

void append (const UprightFrame &c)
void clear ()
void deserialize (class BinaryInput &b)
UprightFrame evaluate (float s) const
void serialize (class BinaryOutput &b) const
int size () const

Public Attributes

Array< UprightFramecontrol
bool cyclic

Protected Member Functions

virtual void correct (UprightFrame &A) const
virtual void ensureShortestPath (UprightFrame *A, int N) const
const UprightFramegetControl (int i) const
void getControls (int i, UprightFrame *A, int N) const


Detailed Description

Shortest-path linear velocity spline for camera positions.

Always keeps the camera from rolling.

See also:
G3D::UprightSplineManipulator, G3D::UprightFrame


Member Function Documentation

void G3D::Spline< UprightFrame >::append ( const UprightFrame c  )  [inline, inherited]

void G3D::Spline< UprightFrame >::clear (  )  [inline, inherited]

virtual void G3D::Spline< UprightFrame >::correct ( UprightFrame A  )  const [inline, protected, virtual, inherited]

Normalize or otherwise adjust this interpolated Control before returning it.

void G3D::UprightSpline::deserialize ( class BinaryInput b  ) 

virtual void G3D::UprightSpline::ensureShortestPath ( UprightFrame A,
int  N 
) const [inline, protected, virtual]

Mutates the array of N control points.

It is useful to override this method by one that wraps the values if they are angles or quaternions for which "shortest path" interpolation is significant.

Reimplemented from G3D::Spline< UprightFrame >.

UprightFrame G3D::Spline< UprightFrame >::evaluate ( float  s  )  const [inline, inherited]

Return the position at parameter s.

For a non-cyclic spline, the curve is clamped at the beginning and ending points and between 0 and 1

const UprightFrame & G3D::Spline< UprightFrame >::getControl ( int  i  )  const [inline, protected, inherited]

Returns the requested control point, wrapping at the ends.

void G3D::Spline< UprightFrame >::getControls ( int  i,
UprightFrame A,
int  N 
) const [inline, protected, inherited]

The indices may be assumed to be treated cyclically.

void G3D::UprightSpline::serialize ( class BinaryOutput b  )  const

int G3D::Spline< UprightFrame >::size (  )  const [inline, inherited]

Number of control points.


Member Data Documentation

Control points.

bool G3D::Spline< UprightFrame >::cyclic [inherited]

If cyclic, then the control points are assumed to wrap around.

If not cyclic, then the derivatives at the ends of the spline point to the final control points.


The documentation for this class was generated from the following file:
Generated on Thu Aug 2 11:40:48 2007 for G3D by doxygen 1.5.2
Hosted by SourceForge.net Logo