#include <node.h>
Collaboration diagram for LsgNode:

Data Fields | |
| LsgObject | super |
| LsgBBox * | bbox |
| int | dirty |
| void(* | clean )(LsgNode *self) |
| void(* | update )(LsgNode *self, float now) |
| void(* | display )(LsgNode *self, LsgFrustum *frustum) |
| int(* | collide )(LsgNode *self, Vertex v, Vertex nearest) |
Related Functions | |
| (Note that these are not member functions.) | |
| void | LsgNode_init (LsgNode *self) |
| void | LsgNode_clean (LsgNode *self) |
| void | LsgNode_update (LsgNode *self, float now) |
| void | LsgNode_display (LsgNode *self, LsgFrustum *frustum) |
| int | LsgNode_collide (LsgNode *self, Vertex v, Vertex nearest) |
| void | LsgNode_destroy (LsgNode *self) |
Abstract base class for the scene graph class hierarchy.
|
|
Constructor for LsgNode. Initially clear the bounding box and set the dirty flag to make the first call to update recompute the complete bounding box tree.
|
|
|
Clean the node by unsetting the dirty flag.
|
|
||||||||||||
|
Update the node. Does nothing at all.
|
|
||||||||||||
|
Display this node. Does nothing at all.
|
|
||||||||||||||||
|
Check collision with this node. Delegate collision detection to bounding box if it is valid. Otherwise always return 0. The value of nearest is not defined if the bounding box is not valid.
|
|
|
Destructor for LsgNode. Destroy the bounding box.
|
|
|
Flag to indicate a changed boundig box. Parents should check this flag after calling update and update their own bounding boxes if necessary. |
|
|
Mark this node as having any changes processed. Call after running update to ensure later calls to update don't have process to reevaluate unchanged nodes.
|
|
|
Update this node to accommodate to passingtime.
|
|
|
Display this node.
|
|
|
Check for collision and calculate nearest vertex if asked for.
|