Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | Namespace Members | Class Members | Related Pages

BezierCurve Class Template Reference
[XEngineMath Library]

Inheritance diagram for BezierCurve:

Inheritance graph
[legend]
List of all members.

Detailed Description

template<unsigned int Dimension, unsigned int Degree = 3>
class XEngine::Math::Curves::BezierCurve< Dimension, Degree >

This class represents Bézier curves of arbitrary degree n with n >= 2 described by n + 1 control points. The time parameter of the curve lies in the range [0, 1]. The class is parameterized by two template parameters, the dimension of the control points and the degree of the curve. The number of control points passed to the constructor must be one more than the degree of the curve. The debug build of the library asserts if this is not the case.


Public Member Functions

template<typename InputIteratorT>
 BezierCurve (InputIteratorT itBegin, InputIteratorT itEnd)
 Constructs a new Bézier curve from the given control points.
unsigned int GetDegree () const
 Returns the degree of this Bézier curve.


Constructor & Destructor Documentation

BezierCurve InputIteratorT  itBegin,
InputIteratorT  itEnd
 

Constructs a new Bézier curve from the given control points. The control points are given as input iterators to values of type Vector, which is the vector type corresponding to the dimension of the curve.

Warning:
Note that the number of control points must be one more than the degree of the curve. The debug build of the library asserts if this is not the case.


Member Function Documentation

unsigned int GetDegree  )  const
 

Returns the degree of this Bézier curve.


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