iso::geom::Spline Class Reference

#include <iso_geom_spline.h>

Inherits iso::geom::Geometry.

Inheritance diagram for iso::geom::Spline:

Inheritance graph
[legend]
Collaboration diagram for iso::geom::Spline:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Spline (unsigned int p_dimension)
 create spline
 Spline (QVector< math::Vector< real > > &p_controlPoints)
 create spline
 Spline (const Spline &pSpline)
 copy constructor
 ~Spline ()
 destructor
const Splineoperator= (const Spline &pSpline)
 spline = spline
virtual void calcMinMaxPos ()
 calculate minimum and maximum positions
unsigned int subdivisionCount () const
 return subdivision count
void setSubdivisionCount (unsigned int p_subdivisionCount)
 set subdivision count
bool closed () const
 return closed
void setClosed (bool p_closed)
 set closed
SplineAlgsplineAlg ()
 return spline algorithm
void setSplineAlg (SplineAlg *p_splineAlg)
 set spline algorithm
QVector< math::Vector< real > > & controlPoints ()
 return control points
QVector< math::Vector< real > > & splinePoints ()
 return spline points
void addControlPoint (math::Vector< real > &p_controlPoint)
 add control point
void addControlPoints (QVector< math::Vector< real > > &p_controlPoints)
 add control points
void removeControlPoints ()
 remove all control points
void update ()
 update spline points
void update (SplineAlg *pSplineAlg)
 update spline points
virtual void closestPoint (const math::Vector< real > &pRefPoint, math::Vector< real > &pResPoint)
 return closest point

Protected Member Functions

 Spline ()
 default constructor

Protected Attributes

QVector< math::Vector< real > > m_controlPoints
 spline control points
QVector< math::Vector< real > > m_splinePoints
 spline points
SplineAlgm_splineAlg
 spline algorithm
bool m_closed
 spline closed or open

Constructor & Destructor Documentation

Spline::Spline ( unsigned int  p_dimension  ) 

create spline

Parameters:
p_dimension dimension of spline
contains zero control points

Spline::Spline ( QVector< math::Vector< real > > &  p_controlPoints  ) 

create spline

Parameters:
p_controlPoints spline control points

Spline::Spline ( const Spline pSpline  ) 

copy constructor

Parameters:
pSpline spline to copy

Spline::~Spline (  ) 

destructor

Spline::Spline (  )  [protected]

default constructor


Member Function Documentation

const Spline & Spline::operator= ( const Spline pSpline  ) 

spline = spline

Parameters:
pSpline spline to copy values from
Returns:
spline
Remarks:
fails if dimensions don't match

void Spline::calcMinMaxPos (  )  [virtual]

calculate minimum and maximum positions

Implements iso::geom::Geometry.

unsigned int Spline::subdivisionCount (  )  const

return subdivision count

Returns:
subdivision count

void Spline::setSubdivisionCount ( unsigned int  p_subdivisionCount  ) 

set subdivision count

Parameters:
p_subdivisionCount subdivision count

bool Spline::closed (  )  const

return closed

Returns:
closed

void Spline::setClosed ( bool  p_closed  ) 

set closed

Parameters:
p_closed closed

SplineAlg * Spline::splineAlg (  ) 

return spline algorithm

void Spline::setSplineAlg ( SplineAlg p_splineAlg  ) 

set spline algorithm

Parameters:
p_splineAlg spline algorithm
Remarks:
fails if dimension of spline and spline algorithm differ

QVector< math::Vector< real > > & Spline::controlPoints (  ) 

return control points

Returns:
control points

QVector< math::Vector< real > > & Spline::splinePoints (  ) 

return spline points

Returns:
spline points

void Spline::addControlPoint ( math::Vector< real > &  p_controlPoint  ) 

add control point

Parameters:
p_controlPoint control point
Remarks:
fails if dimension of spline and control point differ

void Spline::addControlPoints ( QVector< math::Vector< real > > &  p_controlPoints  ) 

add control points

Parameters:
p_controlPoints vector of control points
Remarks:
fails if dimension of spline and control points differ

void Spline::removeControlPoints (  ) 

remove all control points

void Spline::update (  ) 

update spline points

Remarks:
spline employs internal spline algorithm if available

void Spline::update ( SplineAlg pSplineAlg  ) 

update spline points

Parameters:
pSplineAlg spline algorithm
Remarks:
employs external spline algorithm

void Spline::closestPoint ( const math::Vector< real > &  pRefPoint,
math::Vector< real > &  pResPoint 
) [virtual]

return closest point

Parameters:
pRefPoint reference points
pResPoint result point
Remarks:
fails if dimension of reference and result points don't match dimension of geometry

Implements iso::geom::Geometry.


Member Data Documentation

QVector< math::Vector<real> > iso::geom::Spline::m_controlPoints [protected]

spline control points

QVector< math::Vector<real> > iso::geom::Spline::m_splinePoints [protected]

spline points

SplineAlg* iso::geom::Spline::m_splineAlg [protected]

spline algorithm

calculates spline points from control points

bool iso::geom::Spline::m_closed [protected]

spline closed or open


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