#include <sglGeode.hpp>
Inheritance diagram for sglGeode::
Public Methods  
sglGeode ()  
virtual  ~sglGeode () 
unsigned int  getNumGeometries () const 
bool  addGeometry (sglDrawable *geometry) 
bool  insertGeometry (unsigned int index, sglDrawable *geometry) 
bool  removeGeometry (sglDrawable *geometry) 
sglDrawable*  getGeometry (unsigned int index) 
virtual sglBound::IntersectResultEnum  intersect (sglIntersectf &isector) const 
virtual sglBound::IntersectResultEnum  intersect (sglIntersectd &segset) const 
virtual void  pick (sglPickf &pick_state, unsigned int cull_flags) const 
virtual void  pick (sglPickd &pick_state, unsigned int cull_flags) const 
virtual void  preDraw (const PreDrawStruct &trav_state) 
virtual sglNode*  clone (unsigned int mode) const 
virtual void  printInfo (ostream &ostrm, const char *indent_string) const 
Protected Methods  
virtual void  computeBound () 
virtual void  computeBoundsRecursiveDown () 
virtual void  cull (sglCull< float > &trav_state, unsigned int cull_flags) const 
virtual void  cull (sglCull< double > &trav_state, unsigned int cull_flags) const 
void  copyTo (sglGeode *dst, unsigned int mode) const 
Protected Attributes  
vector<sglDrawable *>  m_geometry_list 
Example:
sglGeode *geode = new sglGeode; // subclasses of sglDrawable: sglLineSet *geom1 = new sglLineSet; sglTriangleSet *geom2 = new sglTriangleSet; geode>addGeometry(geom1); geode>addGeometry(geom2); unsigned int num = geode>getNumGeometries(); // returns 2 sglDrawable* geom = geode>getGeometry(0); // returns geom1 geom = geode>getGeometry(2); // returns NULL geode>removeGeometry(geom2); // returns true; geode>insertGeometry(0, geom2); geom = geode>getGeometry(0); // returns geom2
Definition at line 68 of file sglGeode.hpp.

default constructor.


virtual destructor.


Get the number of sglDrawable nodes.
Definition at line 80 of file sglGeode.hpp. 

Add an sglDrawable to the end of the list.


Insert an sglDrawable in a specific location of the list


Remove an sglDrawable specified by its pointer from the list.


Get a pointer to a Geometry in the list at the position specified.


The single precision intersection traversal function which returns the closest object (bounding volume and/or triangle) that intersects with the given intersect segment.
Reimplemented from sglNode. 

The double precision intersection traversal function which returns the closest object (bounding volume and/or triangle) that intersects with the given intersect segment.
Reimplemented from sglNode. 

The single precision pick traversal function which returns all objects that fall within the pick frustum.
Reimplemented from sglNode. 

The double precision pick traversal function which returns all objects that fall within the pick frustum.
Reimplemented from sglNode. 

This is the predraw traversal function which should be called before intersecting or culling the scene graph. This "cleans" the tree by computing the bound boxes and spheres that have been marked as dirty, building display lists for geometry that has changed, binding textures that need to be, updating the animation nodes whose state has changed. This should be called with a valid graphics context current.
Reimplemented from sglNode. 

Make a copy of the scenegraph rooted at this node.
Reimplemented from sglNode. 

Output the state of this node to the specified ostream.
Reimplemented from sglNode. 

The single precision cull traversal function that culls out subgraphs that do not lie in the view frustum (stored in the sglCull parameter). Subclasses must implement this function. The entry point for userfriendly culling is in the sglScene class.
Reimplemented from sglNode. 

The double precision cull traversal function that culls out subgraphs that do not lie in the view frustum (stored in the sglCull parameter). Subclasses must implement this function. The entry point for userfriendly culling is in the sglScene class.
Reimplemented from sglNode. 