osgUtil::Simplifier Class Reference

Inheritance diagram for osgUtil::Simplifier:

osg::NodeVisitor osg::Referenced List of all members.

Public Types

typedef std::vector< unsigned
int > 
IndexList

Public Member Functions

 Simplifier (float sampleRatio=1.0f, float maximumError=FLT_MAX, float maximumLength=0.0)
void setSampleRatio (float sampleRatio)
float getSampleRatio () const
void setMaximumError (float error)
float getMaximumError () const
void setMaximumLength (float length)
float getMaximumLength () const
void setDoTriStrip (bool on)
bool getDoTriStrip () const
void setSmoothing (bool on)
bool getSmoothing () const
void setContinueSimplificationCallback (ContinueSimplificationCallback *cb)
ContinueSimplificationCallbackgetContinueSimplificationCallback ()
const ContinueSimplificationCallbackgetContinueSimplificationCallback () const
bool continueSimplification (float nextError, unsigned int numOriginalPrimitives, unsigned int numRemainingPrimitives) const
virtual bool continueSimplificationImplementation (float nextError, unsigned int numOriginalPrimitives, unsigned int numRemainingPrimitives) const
virtual void apply (osg::Geode &geode)
void simplify (osg::Geometry &geometry)
void simplify (osg::Geometry &geometry, const IndexList &protectedPoints)
 a list of point indices

Protected Attributes

float _sampleRatio
float _maximumError
float _maximumLength
bool _triStrip
bool _smoothing
osg::ref_ptr< ContinueSimplificationCallback_continueSimplificationCallback

Classes

class  ContinueSimplificationCallback

Detailed Description

A simplifier for reducing the number of traingles in osg::Geometry.


Member Typedef Documentation

typedef std::vector<unsigned int> osgUtil::Simplifier::IndexList


Constructor & Destructor Documentation

osgUtil::Simplifier::Simplifier ( float  sampleRatio = 1.0f,
float  maximumError = FLT_MAX,
float  maximumLength = 0.0 
)


Member Function Documentation

virtual void osgUtil::Simplifier::apply ( osg::Geode geode  )  [inline, virtual]

Reimplemented from osg::NodeVisitor.

bool osgUtil::Simplifier::continueSimplification ( float  nextError,
unsigned int  numOriginalPrimitives,
unsigned int  numRemainingPrimitives 
) const [inline]

virtual bool osgUtil::Simplifier::continueSimplificationImplementation ( float  nextError,
unsigned int  numOriginalPrimitives,
unsigned int  numRemainingPrimitives 
) const [inline, virtual]

const ContinueSimplificationCallback* osgUtil::Simplifier::getContinueSimplificationCallback (  )  const [inline]

ContinueSimplificationCallback* osgUtil::Simplifier::getContinueSimplificationCallback (  )  [inline]

bool osgUtil::Simplifier::getDoTriStrip (  )  const [inline]

float osgUtil::Simplifier::getMaximumError (  )  const [inline]

float osgUtil::Simplifier::getMaximumLength (  )  const [inline]

float osgUtil::Simplifier::getSampleRatio (  )  const [inline]

bool osgUtil::Simplifier::getSmoothing (  )  const [inline]

void osgUtil::Simplifier::setContinueSimplificationCallback ( ContinueSimplificationCallback cb  )  [inline]

void osgUtil::Simplifier::setDoTriStrip ( bool  on  )  [inline]

void osgUtil::Simplifier::setMaximumError ( float  error  )  [inline]

Set the maximum point error that all point removals must be less than to permit removal of a point. Note, Only used when down sampling. i.e. sampleRatio < 1.0

void osgUtil::Simplifier::setMaximumLength ( float  length  )  [inline]

Set the maximum length target that all edges must be shorted than. Note, Only used when up sampling i.e. sampleRatio > 1.0.

void osgUtil::Simplifier::setSampleRatio ( float  sampleRatio  )  [inline]

void osgUtil::Simplifier::setSmoothing ( bool  on  )  [inline]

void osgUtil::Simplifier::simplify ( osg::Geometry geometry,
const IndexList protectedPoints 
)

a list of point indices

simply the geometry, whilst protecting key points from being modified.

void osgUtil::Simplifier::simplify ( osg::Geometry geometry  ) 

simply the geometry.


Member Data Documentation

osg::ref_ptr<ContinueSimplificationCallback> osgUtil::Simplifier::_continueSimplificationCallback [protected]

float osgUtil::Simplifier::_maximumError [protected]

float osgUtil::Simplifier::_maximumLength [protected]

float osgUtil::Simplifier::_sampleRatio [protected]

bool osgUtil::Simplifier::_smoothing [protected]

bool osgUtil::Simplifier::_triStrip [protected]


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:14 2006 for openscenegraph by  doxygen 1.4.7