forceBoundStale void BoundedObject::force_bound_stale(void); Description: Marks the current volume as stale and propagates the effect at least one level, even if it had already been marked stale. |
getBound BoundingVolume const &BoundedObject::get_bound(void) const; Description: Returns the current bounding volume on this node, possibly forcing a recompute. A node's bounding volume encloses only the node itself, irrespective of the nodes above or below it in the graph. This is different from the bounding volumes on the arcs, which enclose all geometry below them. |
getClassType static TypeHandle BoundedObject::get_class_type(void); Undocumented function. |
isBoundStale bool BoundedObject::is_bound_stale(void) const; Description: Returns true if the bound is currently marked stale and will be recomputed the next time get_bound() is called. This function is defined up at the top of this file, because several of the inline functions below reference it. |
isFinal bool BoundedObject::is_final(void) const; Description: Returns the current state of the "final" flag. Initially, this flag is off (false), but it may be changed by an explicit call to set_final(). See set_final(). |
markBoundStale bool BoundedObject::mark_bound_stale(void); Description: Marks the current bounding volume as stale, so that it will be recomputed later. This may have a cascading effect up to the root of all graphs of which the node is a part. Returns true if the setting was changed, or false if it was already marked stale (or if it is a static bounding volume). |
setBound void BoundedObject::set_bound(BoundedObject::BoundingVolumeType type); Description: Sets the type of the bounding volume that will be dynamically computed for this particular node. Presently, this should only be BVT_dynamic_sphere. Description: Explicitly sets a new bounding volume on this node. This will be a static bounding volume that will no longer be recomputed automatically. |
setFinal void BoundedObject::set_final(bool flag); Description: Sets the "final" flag on this BoundedObject. If this is true, than no bounding volume need be tested below it; a positive intersection with this bounding volume is deemed to be a positive intersection with all geometry inside. This is useful to quickly force a larger bounding volume around a node when the GeomNodes themselves are inaccurate for some reason, without forcing a recompute of every nested bounding volume. It's also helpful when the bounding volume is tricked by some special properties, like billboards, that may move geometry out of its bounding volume otherwise. |