Added RemoveLoadedProxyNodes pass to Optimizer, set on by default at present.
This commit is contained in:
@@ -20,24 +20,25 @@
|
||||
|
||||
namespace osg {
|
||||
|
||||
class Geode;
|
||||
class Billboard;
|
||||
class LightSource;
|
||||
class ClearNode;
|
||||
class ClipNode;
|
||||
class TexGenNode;
|
||||
class CoordinateSystemNode;
|
||||
class Geode;
|
||||
class Group;
|
||||
class Transform;
|
||||
class Impostor;
|
||||
class LightSource;
|
||||
class LOD;
|
||||
class MatrixTransform;
|
||||
class OccluderNode;
|
||||
class PagedLOD;
|
||||
class PositionAttitudeTransform;
|
||||
class Projection;
|
||||
class LOD;
|
||||
class PagedLOD;
|
||||
class Switch;
|
||||
class Impostor;
|
||||
class ClearNode;
|
||||
class OccluderNode;
|
||||
class ProxyNode;
|
||||
class Sequence;
|
||||
class CoordinateSystemNode;
|
||||
class Switch;
|
||||
class TexGenNode;
|
||||
class Transform;
|
||||
|
||||
/** Visitor for type safe operations on osg::Nodes.
|
||||
Based on GOF's Visitor pattern. The NodeVisitor
|
||||
@@ -222,6 +223,8 @@ class OSG_EXPORT NodeVisitor : public virtual Referenced
|
||||
|
||||
virtual void apply(Group& node) { apply((Node&)node); }
|
||||
|
||||
virtual void apply(ProxyNode& node) { apply((Group&)node); }
|
||||
|
||||
virtual void apply(Projection& node) { apply((Group&)node); }
|
||||
|
||||
virtual void apply(CoordinateSystemNode& node) { apply((Group&)node); }
|
||||
|
||||
@@ -61,19 +61,19 @@ class OSG_EXPORT ProxyNode : public Group
|
||||
/** Get how the center of object should be determined when computed which child is active.*/
|
||||
CenterMode getCenterMode() const { return _centerMode; }
|
||||
|
||||
/** Sets the object-space point which defines the center of the osg::LOD.
|
||||
center is affected by any transforms in the hierarchy above the osg::LOD.*/
|
||||
/** Sets the object-space point which defines the center of the osg::ProxyNode.
|
||||
center is affected by any transforms in the hierarchy above the osg::ProxyNode.*/
|
||||
inline void setCenter(const Vec3& center) { _centerMode=USER_DEFINED_CENTER; _userDefinedCenter = center; }
|
||||
|
||||
/** return the LOD center point. */
|
||||
/** return the ProxyNode center point. */
|
||||
inline const Vec3& getCenter() const { if (_centerMode==USER_DEFINED_CENTER) return _userDefinedCenter; else return getBound().center(); }
|
||||
|
||||
|
||||
/** Set the object-space reference radius of the volume enclosed by the LOD.
|
||||
* Used to detmine the bounding sphere of the LOD in the absense of any children.*/
|
||||
/** Set the object-space reference radius of the volume enclosed by the ProxyNode.
|
||||
* Used to detmine the bounding sphere of the ProxyNode in the absense of any children.*/
|
||||
inline void setRadius(float radius) { _radius = radius; }
|
||||
|
||||
/** Get the object-space radius of the volume enclosed by the LOD.*/
|
||||
/** Get the object-space radius of the volume enclosed by the ProxyNode.*/
|
||||
inline float getRadius() const { return _radius; }
|
||||
|
||||
protected :
|
||||
|
||||
Reference in New Issue
Block a user