version 3.3

VRS::Extrusion Class Reference

#include <vrs/extrusion.h>

Inheritance diagram for VRS::Extrusion:

VRS::Shape VRS::RenderObj VRS::SharedObj VRS::Visitable

List of all members.

Public Member Functions

 Extrusion (Iterator< Vector > *profilItr=NULL, Iterator< Vector > *pathItr=NULL, Iterator< Vector > *scaleItr=NULL, Iterator< Vector > *upItr=NULL, bool beginCap=true, bool endCap=true)
 Constructs the extrusion.
void setProfilIterator (Iterator< Vector > *iter)
 Sets the profile specified by its corners.
const Iterator< Vector > * getProfilIterator () const
 Returns corners specifying the profile.
void setPathIterator (Iterator< Vector > *iter)
 Sets extrusion path.
const Iterator< Vector > * getPathIterator () const
 Returns the extrusion path.
void setScaleIterator (Iterator< Vector > *iter)
 Sets the scale values (x and z) for each path point.
const Iterator< Vector > * getScaleIterator () const
 Returns the scaling values (x and z) for each path point.
void setUpIterator (Iterator< Vector > *iter)
const Iterator< Vector > * getUpIterator () const
 Get/set the up-iterator.
void setBeginCap (bool onOff)
 Toggles the drawing of the begin cap.
bool getBeginCap () const
 Returns whether the begin cap is drawn.
void setEndCap (bool onOff)
 Toggles the drawing of the end cap.
bool getEndCap () const
 Returns whether the end cap is drawn.
virtual Bounds boundingBox () const
 The bounding box of the extrusion shape.
virtual void modified ()
 VRS_TYPEINFO (Extrusion, Shape)
 VRS_SERIALIZABLE (Extrusion)


Detailed Description

Extrusion shape, constructed by a profile extruded along a path An extrusion is an extruded surface, built of a 2D profil and a 3D path curve. The 2D profil is swept along the 3D path to build the surface. In every path step the profil is scaled by the given scale values (xz plane). Profil, path and scale values are given as a finit number of points (vector iterator). If at least one of the caps should be closed the profil must be defined by a convex polygon. If the up-iterator is specified this direction is matched with the z-direction of the specified profil otherwise (0,1,0) will be used for the up-direction. The number N of profile points must be greater than 2, The number of M of path points must be greater or equal 2. The number L of scalepoints must match M exactly. The origin lies in the center of the profil. Three following path points must NOT be collinear!

Constructor & Destructor Documentation

VRS::Extrusion::Extrusion ( Iterator< Vector > *  profilItr = NULL,
Iterator< Vector > *  pathItr = NULL,
Iterator< Vector > *  scaleItr = NULL,
Iterator< Vector > *  upItr = NULL,
bool  beginCap = true,
bool  endCap = true 
)

Constructs the extrusion.


Member Function Documentation

void VRS::Extrusion::setProfilIterator ( Iterator< Vector > *  iter  ) 

Sets the profile specified by its corners.

const Iterator< Vector > * VRS::Extrusion::getProfilIterator (  )  const [inline]

Returns corners specifying the profile.

void VRS::Extrusion::setPathIterator ( Iterator< Vector > *  iter  ) 

Sets extrusion path.

const Iterator< Vector > * VRS::Extrusion::getPathIterator (  )  const [inline]

Returns the extrusion path.

void VRS::Extrusion::setScaleIterator ( Iterator< Vector > *  iter  ) 

Sets the scale values (x and z) for each path point.

The number of scaling values must match the number of path points exactly.

const Iterator< Vector > * VRS::Extrusion::getScaleIterator (  )  const [inline]

Returns the scaling values (x and z) for each path point.

void VRS::Extrusion::setUpIterator ( Iterator< Vector > *  iter  ) 

const Iterator< Vector > * VRS::Extrusion::getUpIterator (  )  const [inline]

Get/set the up-iterator.

void VRS::Extrusion::setBeginCap ( bool  onOff  )  [inline]

Toggles the drawing of the begin cap.

bool VRS::Extrusion::getBeginCap (  )  const [inline]

Returns whether the begin cap is drawn.

void VRS::Extrusion::setEndCap ( bool  onOff  )  [inline]

Toggles the drawing of the end cap.

bool VRS::Extrusion::getEndCap (  )  const [inline]

Returns whether the end cap is drawn.

virtual Bounds VRS::Extrusion::boundingBox (  )  const [virtual]

The bounding box of the extrusion shape.

Implements VRS::Shape.

virtual void VRS::Extrusion::modified (  )  [virtual]

Reimplemented from VRS::SharedObj.

VRS::Extrusion::VRS_TYPEINFO ( Extrusion  ,
Shape   
)

VRS::Extrusion::VRS_SERIALIZABLE ( Extrusion   ) 


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

Generated on Mon May 21 06:00:17 2012 by Doxygen 1.5.6
© 2001-2010 Hasso-Plattner-Institut | Impressum | Contact