#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 pre-draw 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 user-friendly 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 user-friendly culling is in the sglScene class.
Reimplemented from sglNode. |