Leaf Node for grouping Drawables
Inheritance:
Public Methods
-
Geode()
-
Geode(const Geode&, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
-
META_Node(osg, Geode)
-
virtual bool addDrawable( Drawable* drawable )
- Add Drawable to Geode.
-
virtual bool removeDrawable( Drawable* drawable )
- Remove Drawable from Geode.
-
virtual bool removeDrawable(unsigned int i, unsigned int numDrawablesToRemove=1)
- Remove drawable(s) from the specified position in Geode's drawable list
-
virtual bool replaceDrawable( Drawable* origDraw, Drawable* newDraw )
- Replace specified Drawable with another Drawable.
-
virtual bool setDrawable( unsigned int i, Drawable* drawable )
- set drawable at position i.
-
inline unsigned int getNumDrawables() const
- return the number of drawable's
-
inline Drawable* getDrawable( unsigned int i )
- return drawable at position i
-
inline const Drawable* getDrawable( unsigned int i ) const
- return drawable at position i
-
inline bool containsDrawable(const Drawable* gset) const
- return true if drawable is contained within Geode
-
inline unsigned int getDrawableIndex( const Drawable* node ) const
- Get the index number of drawable, return a value between 0 and _drawablessize()-1 if found, if not found then return _drawablessize()
-
void compileDrawables(State& state)
- compile OpenGL Display List for each drawable
-
inline const BoundingBox& getBoundingBox() const
- return the Geode's bounding box, which the union of all the bounding boxes of the geode's drawables
Public
-
typedef std::vector< ref_ptr<Drawable> > DrawableList
Protected Fields
-
mutable osg::BoundingBox _bbox
-
DrawableList _drawables
Protected Methods
-
virtual ~Geode()
-
virtual bool computeBound() const
Inherited from Node:
Public Methods
-
virtual Object* cloneType() const
-
virtual Object* clone(const CopyOp& copyop) const
-
virtual bool isSameKindAs(const Object* obj) const
-
virtual const char* libraryName() const
-
virtual const char* className() const
-
virtual Group* asGroup()
-
virtual const Group* asGroup() const
-
virtual Transform* asTransform()
-
virtual const Transform* asTransform() const
-
virtual void accept(NodeVisitor& nv)
-
virtual void ascend(NodeVisitor& nv)
-
virtual void traverse(NodeVisitor& )
-
inline void setName( const std::string& name )
-
inline void setName( const char* name )
-
inline const std::string& getName() const
-
inline const ParentList& getParents() const
-
inline ParentList getParents()
-
inline Group* getParent(unsigned int i)
-
inline const Group* getParent(unsigned int i) const
-
inline unsigned int getNumParents() const
-
void setUpdateCallback(NodeCallback* nc)
-
inline NodeCallback* getUpdateCallback()
-
inline const NodeCallback* getUpdateCallback() const
-
inline unsigned int getNumChildrenRequiringUpdateTraversal() const
-
void setCullCallback(NodeCallback* nc)
-
inline NodeCallback* getCullCallback()
-
inline const NodeCallback* getCullCallback() const
-
void setCullingActive(bool active)
-
inline bool getCullingActive() const
-
inline unsigned int getNumChildrenWithCullingDisabled() const
-
inline bool isCullingActive() const
-
inline unsigned int getNumChildrenWithOccluderNodes() const
-
bool containsOccluderNodes() const
-
inline void setNodeMask(NodeMask nm)
-
inline NodeMask getNodeMask() const
-
inline const DescriptionList& getDescriptions() const
-
inline DescriptionList& getDescriptions()
-
inline const std::string& getDescription(unsigned int i) const
-
inline std::string& getDescription(unsigned int i)
-
inline unsigned int getNumDescriptions() const
-
void addDescription(const std::string& desc)
-
inline void setStateSet(osg::StateSet* dstate)
-
osg::StateSet* getOrCreateStateSet()
-
inline osg::StateSet* getStateSet()
-
inline const osg::StateSet* getStateSet() const
-
inline const BoundingSphere& getBound() const
-
void dirtyBound()
Public
-
typedef std::vector<Group*> ParentList
-
typedef unsigned int NodeMask
-
typedef std::vector<std::string> DescriptionList
Protected Fields
-
mutable BoundingSphere _bsphere
-
mutable bool _bsphere_computed
-
std::string _name
-
ParentList _parents
-
ref_ptr<NodeCallback> _updateCallback
-
unsigned int _numChildrenRequiringUpdateTraversal
-
ref_ptr<NodeCallback> _cullCallback
-
bool _cullingActive
-
unsigned int _numChildrenWithCullingDisabled
-
unsigned int _numChildrenWithOccluderNodes
-
NodeMask _nodeMask
-
DescriptionList _descriptions
-
ref_ptr<StateSet> _stateset
Protected Methods
-
void addParent(osg::Group* node)
-
void removeParent(osg::Group* node)
-
void setNumChildrenRequiringUpdateTraversal(unsigned int num)
-
void setNumChildrenWithCullingDisabled(unsigned int num)
-
void setNumChildrenWithOccluderNodes(unsigned int num)
Inherited from Object:
Public Classes
-
enum DataVariance
Public Methods
-
inline void setDataVariance(DataVariance dv)
-
inline DataVariance getDataVariance() const
-
inline void setUserData(Referenced* obj)
-
inline Referenced* getUserData()
-
inline const Referenced* getUserData() const
Protected Fields
-
DataVariance _dataVariance
-
ref_ptr<Referenced> _userData
Public Methods
-
inline Referenced& operator = (const Referenced&)
-
static void setDeleteHandler(DeleteHandler* handler)
-
static DeleteHandler* getDeleteHandler()
-
inline void ref() const
-
inline void unref_nodelete() const
-
inline int referenceCount() const
-
inline void unref() const
Protected Fields
-
mutable OpenThreads::Mutex _refMutex
-
mutable int _refCount
Documentation
Leaf Node for grouping Drawables
- typedef std::vector< ref_ptr<Drawable> > DrawableList
- Geode()
- Geode(const Geode&, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
- META_Node(osg, Geode)
- virtual bool addDrawable( Drawable* drawable )
- Add Drawable to Geode.
If gset is not NULL and is not contained in Geode then increment its
reference count, add it to the drawables list and dirty the bounding
sphere to force it to recompute on next getBound() and return true for success.
Otherwise return false.
- virtual bool removeDrawable( Drawable* drawable )
- Remove Drawable from Geode.
Equivalent to setDrawabke(getDrawableIndex(orignChild),node),
see docs for setNode for futher details on implementation.
- virtual bool removeDrawable(unsigned int i, unsigned int numDrawablesToRemove=1)
- Remove drawable(s) from the specified position in Geode's drawable list
- virtual bool replaceDrawable( Drawable* origDraw, Drawable* newDraw )
- Replace specified Drawable with another Drawable.
Equivalent to setDrawable(getDrawableIndex(orignChild),node),
see docs for setDrawable for futher details on implementation.
- virtual bool setDrawable( unsigned int i, Drawable* drawable )
- set drawable at position i.
return true if set correctly, false on failure (if node==NULL || i is out of range).
Decrement the reference count origGSet and increments the
reference count of newGset, and dirty the bounding sphere
to force it to recompute on next getBound() and returns true.
If origDrawable is not found then return false and do not
add newGset. If newGset is NULL then return false and do
not remove origGset.
- inline unsigned int getNumDrawables() const
- return the number of drawable's
- inline Drawable* getDrawable( unsigned int i )
- return drawable at position i
- inline const Drawable* getDrawable( unsigned int i ) const
- return drawable at position i
- inline bool containsDrawable(const Drawable* gset) const
- return true if drawable is contained within Geode
- inline unsigned int getDrawableIndex( const Drawable* node ) const
- Get the index number of drawable, return a value between
0 and _drawablessize()-1 if found, if not found then
return _drawablessize()
- void compileDrawables(State& state)
- compile OpenGL Display List for each drawable
- inline const BoundingBox& getBoundingBox() const
- return the Geode's bounding box, which the union of all the
bounding boxes of the geode's drawables
- virtual ~Geode()
- virtual bool computeBound() const
- mutable osg::BoundingBox _bbox
- DrawableList _drawables
- Direct child classes:
- Billboard
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.