geom::ParametricCurve< n > Class Template Reference

The base class for any parametric curve. More...

#include <Curve.h>

Inheritance diagram for geom::ParametricCurve< n >:

util::Parameterized geom::ControlPointCurveBase< n > geom::Line< n > geom::Polyline< n > List of all members.

Public Types

typedef PointNd< n > Point
 The actual point type in the space that the curve lives in.
typedef VecNd< n > Vec
 The actual vector type in the space that the curve lives in.
enum  { Dim = n }
 The dimension of the curve. More...

Public Member Functions

 LOKI_DEFINE_CONST_VISITABLE ()
virtual ~ParametricCurve ()
virtual std::pair< double,
double > 
getRange () const =0
virtual bool isPeriodic () const =0
virtual void evaluate (double param, Point *pPt, int nderivs=0, std::vector< Vec > *pDerivs=0) const =0
virtual shared_ptr< ParametricCurve<
n > > 
clone () const =0
virtual void reverse ()=0
 Reverse the sense of the curve.

Friends

class boost::serialization::access

Detailed Description

template<int n>
class geom::ParametricCurve< n >

The base class for any parametric curve.


Member Typedef Documentation

template<int n>
typedef PointNd<n> geom::ParametricCurve< n >::Point
 

The actual point type in the space that the curve lives in.

template<int n>
typedef VecNd<n> geom::ParametricCurve< n >::Vec
 

The actual vector type in the space that the curve lives in.


Member Enumeration Documentation

template<int n>
anonymous enum
 

The dimension of the curve.

Enumerator:
Dim 


Constructor & Destructor Documentation

template<int n>
virtual geom::ParametricCurve< n >::~ParametricCurve  )  [virtual]
 


Member Function Documentation

template<int n>
virtual shared_ptr<ParametricCurve<n> > geom::ParametricCurve< n >::clone  )  const [pure virtual]
 

Create a copy of the curve.

Returns:
A shared_ptr containing a copy of the curve.

template<int n>
virtual void geom::ParametricCurve< n >::evaluate double  param,
Point pPt,
int  nderivs = 0,
std::vector< Vec > *  pDerivs = 0
const [pure virtual]
 

Evaluate the curve at a particular parameter.

Parameters:
param The parameter at which to evaluate the curve.
pPt A pointer to the point on the curve evaluated at param.
nderivs The number of derivatives to evaluate.
pDerivs If nderivs != 0, a pointer to a vector of at least size nderivs-1 in which the derivatives evaluated at param are returned.

template<int n>
virtual std::pair<double, double> geom::ParametricCurve< n >::getRange  )  const [pure virtual]
 

Get bounds on the domain of the curve.

Returns:
A pair describing the lower and upper bounds of the curve's domain.

template<int n>
virtual bool geom::ParametricCurve< n >::isPeriodic  )  const [pure virtual]
 

Determine whether or not the curve is periodic.

Returns:
true if the curve is periodic, false if not.

template<int n>
geom::ParametricCurve< n >::LOKI_DEFINE_CONST_VISITABLE  ) 
 

Reimplemented in geom::Line< n >, geom::Polyline< n >, and geom::Arc< 2 >.

template<int n>
virtual void geom::ParametricCurve< n >::reverse  )  [pure virtual]
 

Reverse the sense of the curve.


Friends And Related Function Documentation

template<int n>
friend class boost::serialization::access [friend]
 

Reimplemented from util::Parameterized.


The documentation for this class was generated from the following file:
Generated on Tue Jan 29 21:37:58 2008 for VoluMill Universal Client by  doxygen 1.4.6