CrystalSpace

Public API Reference

csPath Class Reference
[Geometry utilities]

A path in 3D. More...

#include <csgeom/path.h>

Inheritance diagram for csPath:

List of all members.

Public Member Functions

virtual void CalculateAtTime (float time)
 Calculate internal values for this spline given some time value.
 csPath (int p)
 Create a path with p points.
virtual int GetCurrentIndex ()
 Get current index.
float GetDimensionValue (int dim, int idx) const
 Get the value for some dimension.
float const * GetDimensionValues (int dim) const
 Get the values for some dimension.
virtual void GetForwardVector (int idx, csVector3 &v)
 Get one forward vector.
virtual void GetInterpolatedForward (csVector3 &pos)
 Get the interpolated forward vector.
virtual void GetInterpolatedPosition (csVector3 &pos)
 Get the interpolated position.
virtual void GetInterpolatedUp (csVector3 &pos)
 Get the interpolated up vector.
virtual void GetPositionVector (int idx, csVector3 &v)
 Get one position vector.
virtual float GetTime (int idx)
 Get one time point.
float const * GetTimes () const
 Get the time values.
virtual void GetUpVector (int idx, csVector3 &v)
 Get one up vector.
void InsertPoint (int idx)
 Insert a point after some index.
virtual int Length ()
 Get the number of vector points in this spline.
virtual iObjectQueryObject ()
 Get the iObject for this path.
void RemovePoint (int idx)
 Remove a point at the index.
virtual void SetForwardVector (int idx, const csVector3 &v)
 Set one forward vector.
virtual void SetForwardVectors (csVector3 *v)
 Set the forward vectors (dimensions 6 to 8).
virtual void SetPositionVector (int idx, const csVector3 &v)
 Set one position vector.
virtual void SetPositionVectors (csVector3 *v)
 Set the position vectors (first three dimensions of the cubic spline).
virtual void SetTime (int idx, float t)
 Set one time point.
void SetTimes (float const *t)
 Set the time values.
void Setup (int p)
 Setup a new path with p points.
virtual void SetUpVector (int idx, const csVector3 &v)
 Set one up vector.
virtual void SetUpVectors (csVector3 *v)
 Set the up vectors (dimensions 3 to 5).
virtual ~csPath ()
 Destroy the path.

Detailed Description

A path in 3D.

An object or camera can use this object to trace a path in 3D. This is particularly useful in combination with csReversibleTransform::LookAt().

Definition at line 45 of file path.h.


Constructor & Destructor Documentation

csPath::csPath ( int  p  )  [inline]

Create a path with p points.

Definition at line 76 of file path.h.

virtual csPath::~csPath (  )  [inline, virtual]

Destroy the path.

Definition at line 82 of file path.h.


Member Function Documentation

virtual void csPath::CalculateAtTime ( float  time  )  [inline, virtual]

Calculate internal values for this spline given some time value.

Implements iPath.

Definition at line 98 of file path.h.

virtual int csPath::GetCurrentIndex (  )  [inline, virtual]

Get current index.

Implements iPath.

Definition at line 104 of file path.h.

float csPath::GetDimensionValue ( int  dim,
int  idx 
) const [inline]

Get the value for some dimension.

Definition at line 222 of file path.h.

float const* csPath::GetDimensionValues ( int  dim  )  const [inline]

Get the values for some dimension.

Definition at line 217 of file path.h.

virtual void csPath::GetForwardVector ( int  idx,
csVector3 v 
) [inline, virtual]

Get one forward vector.

Implements iPath.

Definition at line 188 of file path.h.

virtual void csPath::GetInterpolatedForward ( csVector3 pos  )  [inline, virtual]

Get the interpolated forward vector.

Implements iPath.

Definition at line 210 of file path.h.

virtual void csPath::GetInterpolatedPosition ( csVector3 pos  )  [inline, virtual]

Get the interpolated position.

Implements iPath.

Definition at line 196 of file path.h.

virtual void csPath::GetInterpolatedUp ( csVector3 pos  )  [inline, virtual]

Get the interpolated up vector.

Implements iPath.

Definition at line 203 of file path.h.

virtual void csPath::GetPositionVector ( int  idx,
csVector3 v 
) [inline, virtual]

Get one position vector.

Implements iPath.

Definition at line 174 of file path.h.

virtual float csPath::GetTime ( int  idx  )  [inline, virtual]

Get one time point.

Implements iPath.

Definition at line 109 of file path.h.

float const* csPath::GetTimes (  )  const [inline]

Get the time values.

Definition at line 132 of file path.h.

virtual void csPath::GetUpVector ( int  idx,
csVector3 v 
) [inline, virtual]

Get one up vector.

Implements iPath.

Definition at line 181 of file path.h.

void csPath::InsertPoint ( int  idx  )  [inline]

Insert a point after some index.

If index == -1 add a point before all others.

Definition at line 230 of file path.h.

virtual int csPath::Length (  )  [inline, virtual]

Get the number of vector points in this spline.

Implements iPath.

Definition at line 86 of file path.h.

virtual iObject* csPath::QueryObject (  )  [inline, virtual]

Get the iObject for this path.

Implements iPath.

Definition at line 92 of file path.h.

void csPath::RemovePoint ( int  idx  )  [inline]

Remove a point at the index.

Definition at line 235 of file path.h.

virtual void csPath::SetForwardVector ( int  idx,
const csVector3 v 
) [inline, virtual]

Set one forward vector.

Implements iPath.

Definition at line 167 of file path.h.

virtual void csPath::SetForwardVectors ( csVector3 v  )  [inline, virtual]

Set the forward vectors (dimensions 6 to 8).

Implements iPath.

Definition at line 148 of file path.h.

virtual void csPath::SetPositionVector ( int  idx,
const csVector3 v 
) [inline, virtual]

Set one position vector.

Implements iPath.

Definition at line 153 of file path.h.

virtual void csPath::SetPositionVectors ( csVector3 v  )  [inline, virtual]

Set the position vectors (first three dimensions of the cubic spline).

Implements iPath.

Definition at line 138 of file path.h.

virtual void csPath::SetTime ( int  idx,
float  t 
) [inline, virtual]

Set one time point.

Implements iPath.

Definition at line 115 of file path.h.

void csPath::SetTimes ( float const *  t  )  [inline]

Set the time values.

't' should point to an array containing 'num_points' values. These values typically start with 0 and end with 1. Other values are also possible the but the values should rise. The given array is copied.

Definition at line 126 of file path.h.

void csPath::Setup ( int  p  )  [inline]

Setup a new path with p points.

Definition at line 79 of file path.h.

virtual void csPath::SetUpVector ( int  idx,
const csVector3 v 
) [inline, virtual]

Set one up vector.

Implements iPath.

Definition at line 160 of file path.h.

virtual void csPath::SetUpVectors ( csVector3 v  )  [inline, virtual]

Set the up vectors (dimensions 3 to 5).

Implements iPath.

Definition at line 143 of file path.h.


The documentation for this class was generated from the following file:

Generated for Crystal Space 2.1 by doxygen 1.6.1