Added MergeGeometryVisitor::setTargetMaximumNumberOfVertices(uint);

This commit is contained in:
Robert Osfield
2005-04-23 16:09:20 +00:00
parent 6b8a50375b
commit 0d9887462a
2 changed files with 19 additions and 6 deletions

View File

@@ -417,7 +417,18 @@ class OSGUTIL_EXPORT Optimizer
/// default to traversing all children.
MergeGeometryVisitor(Optimizer* optimizer=0) :
BaseOptimizerVisitor(optimizer, MERGE_GEOMETRY) {}
BaseOptimizerVisitor(optimizer, MERGE_GEOMETRY),
_targetMaximumNumberOfVertices(10000) {}
void setTargetMaximumNumberOfVertices(unsigned int num)
{
_targetMaximumNumberOfVertices = num;
}
unsigned int getTargetMaximumNumberOfVertices() const
{
return _targetMaximumNumberOfVertices;
}
virtual void apply(osg::Geode& geode) { mergeGeode(geode); }
virtual void apply(osg::Billboard&) { /* don't do anything*/ }
@@ -434,6 +445,10 @@ class OSGUTIL_EXPORT Optimizer
static bool mergePrimitive(osg::DrawElementsUShort& lhs,osg::DrawElementsUShort& rhs);
static bool mergePrimitive(osg::DrawElementsUInt& lhs,osg::DrawElementsUInt& rhs);
protected:
unsigned int _targetMaximumNumberOfVertices;
};
/** Spatialize scene into a balanced quad/oct tree.*/