iso::geom::SplineAlg Class Reference

#include <iso_geom_spline_alg.h>

Inherited by iso::geom::BezierSplineAlg, and iso::geom::HermiteSplineAlg.

Inheritance diagram for iso::geom::SplineAlg:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 SplineAlg (unsigned int p_dimension, unsigned int p_controlCount, unsigned int p_subdivisionCount)
 create spline algorithm
virtual ~SplineAlg ()
 destructor
virtual SplineAlgcopy () const=0
 create a copy of a spline alg
unsigned int dimension () const
 return spline dimension
unsigned int controlCount () const
 return number of control points
unsigned int subdivisionCount () const
 return number of subdivisons
virtual void setSubdivisionCount (unsigned int p_subdivisionCount)
 set subdivision count
virtual void createSpline (QVector< math::Vector< real > > &p_controlPoints, QVector< math::Vector< real > > &p_splinePoints, bool b_closed=false)=0
 create spline

Protected Member Functions

 SplineAlg ()
 default constructor
virtual void preCalc ()=0
 precalculate polynomial values

Protected Attributes

unsigned int m_dimension
 spline dimension
unsigned int m_controlCount
 number of control points
unsigned int m_subdivisionCount
 number of subdivisions
math::Matrix< realm_SM
 interpolation parameter matrix
math::Matrix< realm_CM
 spline parameter matrix
math::Matrix< realm_HM
 spline polynomial matrix
math::Matrix< realm_PM
 resulting point in matrix form
math::Matrix< real > ** m_preCalcMatrices
 array of matrices containing precalculated polynomial values

Constructor & Destructor Documentation

SplineAlg::SplineAlg ( unsigned int  p_dimension,
unsigned int  p_controlCount,
unsigned int  p_subdivisionCount 
)

create spline algorithm

Parameters:
p_dimension dimension of spline
p_controlCount number of control points
p_subdivisionCount number of subdivisions

SplineAlg::~SplineAlg (  )  [virtual]

destructor

SplineAlg::SplineAlg (  )  [protected]

default constructor


Member Function Documentation

virtual SplineAlg* iso::geom::SplineAlg::copy (  )  const [pure virtual]

create a copy of a spline alg

Returns:
copy of spline alg

Implemented in iso::geom::BezierSplineAlg, and iso::geom::HermiteSplineAlg.

unsigned int SplineAlg::dimension (  )  const

return spline dimension

Returns:
spline dimension

unsigned int SplineAlg::controlCount (  )  const

return number of control points

Returns:
number of control points

unsigned int SplineAlg::subdivisionCount (  )  const

return number of subdivisons

Returns:
number of subdivisions

void SplineAlg::setSubdivisionCount ( unsigned int  p_subdivisionCount  )  [virtual]

set subdivision count

Parameters:
p_subdivisionCount subdivision count

Reimplemented in iso::geom::BezierSplineAlg, and iso::geom::HermiteSplineAlg.

virtual void iso::geom::SplineAlg::createSpline ( QVector< math::Vector< real > > &  p_controlPoints,
QVector< math::Vector< real > > &  p_splinePoints,
bool  b_closed = false 
) [pure virtual]

create spline

Parameters:
p_controlPoints control points
p_splinePoints resulting spline points
b_closed whether spline should be closed or not

Implemented in iso::geom::BezierSplineAlg, and iso::geom::HermiteSplineAlg.

virtual void iso::geom::SplineAlg::preCalc (  )  [protected, pure virtual]

precalculate polynomial values

Implemented in iso::geom::BezierSplineAlg, and iso::geom::HermiteSplineAlg.


Member Data Documentation

unsigned int iso::geom::SplineAlg::m_dimension [protected]

spline dimension

unsigned int iso::geom::SplineAlg::m_controlCount [protected]

number of control points

unsigned int iso::geom::SplineAlg::m_subdivisionCount [protected]

number of subdivisions

math::Matrix<real> iso::geom::SplineAlg::m_SM [protected]

interpolation parameter matrix

math::Matrix<real> iso::geom::SplineAlg::m_CM [protected]

spline parameter matrix

math::Matrix<real> iso::geom::SplineAlg::m_HM [protected]

spline polynomial matrix

math::Matrix<real> iso::geom::SplineAlg::m_PM [protected]

resulting point in matrix form

math::Matrix<real>** iso::geom::SplineAlg::m_preCalcMatrices [protected]

array of matrices containing precalculated polynomial values


The documentation for this class was generated from the following files:
Generated on Wed Jun 2 20:43:25 2010 for iso_geom by  doxygen 1.5.1