Spline< DataType, dim > Class Template Reference

#include <Overhauser.h>

Inheritance diagram for Spline< DataType, dim >:
SplineCurve< DataType, dim >

List of all members.

Public Member Functions

 Spline ()
 Spline (const Spline &s)
 ~Spline ()
virtual BPType Eq (DataType t, const BPType &p1, const BPType &p2, const BPType &p3, const BPType &p4)
 Solve the Catmull-Rom parametric equation for a given time(t) and vector quadruple (p1,p2,p3,p4).
virtual PType Eq (DataType t, const PType &p1, const PType &p2, const PType &p3, const PType &p4)
virtual void AddSplineNode (const PType &v)
virtual PType GetInterpolatedSplineNode (DataType t)
 Return the Overhauser interpolated spline point on the interpolation interval determined from the number of nodes along initial curve.
virtual PType GetInterpolatedSplineNode_dist (DataType t)
 Return the Overhauser interpolated spline point on the interpolation interval determined from relative distance, t, along initial curve.
virtual BPType linear (DataType t, const BPType &p1, const BPType &p2)
 Solve the Catmull-Rom parametric equation for a given time(t) and vector quadruple (p1,p2,p3,p4).
virtual PType linear (DataType t, const PType &p1, const PType &p2)
virtual PType GetInterpolatedSplineNode_distLinear (DataType t)
 Return the linearly interpolated spline point on the interpolation interval determined from relative distance, t, along initial curve.
virtual int GetNumSplineNodes ()
virtual PType GetNthSplineNode (int n)
virtual void Restart (std::ifstream &ifs, int &pos, double &t, double &dt)
virtual void Checkpointing (std::ofstream &ofs)

Public Attributes

std::vector< PTypenodes
std::vector< DataTypeslength
DataType delta_t
DataType delta_s
DataType length
BPType ltemp
int num_nodes
int num_slength

Detailed Description

template<class DataType, int dim>
class Spline< DataType, dim >

Static method for computing the Catmull-Rom parametric equation given a time (t) and a vector quadruple (p1,p2,p3,p4). static BPType Eq(DataType t, const BPType& p1, const BPType& p2, const BPType& p3, const BPType& p4);


Constructor & Destructor Documentation

template<class DataType , int dim>
Spline< DataType, dim >::Spline (  )  [inline]
template<class DataType , int dim>
Spline< DataType, dim >::~Spline (  )  [inline]

Member Function Documentation

template<class DataType , int dim>
virtual PType Spline< DataType, dim >::Eq ( DataType  t,
const PType p1,
const PType p2,
const PType p3,
const PType p4 
) [inline, virtual]
template<class DataType , int dim>
virtual BPType Spline< DataType, dim >::Eq ( DataType  t,
const BPType p1,
const BPType p2,
const BPType p3,
const BPType p4 
) [inline, virtual]

Solve the Catmull-Rom parametric equation for a given time(t) and vector quadruple (p1,p2,p3,p4).

Referenced by Spline< DataType, dim >::Eq(), Spline< DataType, dim >::GetInterpolatedSplineNode(), and Spline< DataType, dim >::GetInterpolatedSplineNode_dist().

template<class DataType , int dim>
virtual PType Spline< DataType, dim >::GetInterpolatedSplineNode ( DataType  t  )  [inline, virtual]

Return the Overhauser interpolated spline point on the interpolation interval determined from the number of nodes along initial curve.

References BOUNDS, Spline< DataType, dim >::delta_t, Spline< DataType, dim >::Eq(), Spline< DataType, dim >::nodes, and overbose.

template<class DataType , int dim>
virtual PType Spline< DataType, dim >::GetInterpolatedSplineNode_dist ( DataType  t  )  [inline, virtual]

Return the Overhauser interpolated spline point on the interpolation interval determined from relative distance, t, along initial curve.

References BOUNDS, Spline< DataType, dim >::delta_t, Spline< DataType, dim >::Eq(), Spline< DataType, dim >::length, Spline< DataType, dim >::nodes, overbose, and Spline< DataType, dim >::slength.

Referenced by SplineCurve< DataType, dim >::interpolate().

template<class DataType , int dim>
virtual PType Spline< DataType, dim >::GetInterpolatedSplineNode_distLinear ( DataType  t  )  [inline, virtual]

Return the linearly interpolated spline point on the interpolation interval determined from relative distance, t, along initial curve.

References BOUNDS, Spline< DataType, dim >::delta_t, Spline< DataType, dim >::length, Spline< DataType, dim >::linear(), Spline< DataType, dim >::nodes, overbose, and Spline< DataType, dim >::slength.

Referenced by SplineCurve< DataType, dim >::interpolate_linear().

template<class DataType , int dim>
virtual PType Spline< DataType, dim >::GetNthSplineNode ( int  n  )  [inline, virtual]
template<class DataType , int dim>
virtual int Spline< DataType, dim >::GetNumSplineNodes (  )  [inline, virtual]
template<class DataType , int dim>
virtual PType Spline< DataType, dim >::linear ( DataType  t,
const PType p1,
const PType p2 
) [inline, virtual]
template<class DataType , int dim>
virtual BPType Spline< DataType, dim >::linear ( DataType  t,
const BPType p1,
const BPType p2 
) [inline, virtual]

Solve the Catmull-Rom parametric equation for a given time(t) and vector quadruple (p1,p2,p3,p4).

References normalize().

Referenced by Spline< DataType, dim >::GetInterpolatedSplineNode_distLinear(), and Spline< DataType, dim >::linear().

template<class DataType , int dim>
virtual void Spline< DataType, dim >::Restart ( std::ifstream &  ifs,
int &  pos,
double &  t,
double &  dt 
) [inline, virtual]

Member Data Documentation

template<class DataType , int dim>
int Spline< DataType, dim >::num_nodes
template<class DataType , int dim>
int Spline< DataType, dim >::num_slength

The documentation for this class was generated from the following file:
Generated on Thu Jun 30 02:18:58 2016 for Motion - rigid body dynamics solver by  doxygen 1.6.3