Abstract base class for nodes that represent a bounded volume in the scene graph.
More...
Public Member Functions |
virtual | ~bounded_volume_node () throw () |
| Destroy.
|
const openvrml::bounding_volume & | bounding_volume () const |
| Get this node's bounding volume.
|
virtual | ~node ()=0 throw () |
| Destructor.
|
void | add_ref () const throw () |
| Increment the reference count.
|
void | remove_ref () const throw () |
| Decrement the reference count.
|
void | release () const throw () |
| Decrement the reference count; destroy the instance if the count drops to zero.
|
size_t | use_count () const throw () |
| The number of owning references to the instance.
|
const node_type & | type () const throw () |
| The type information object for the node .
|
const std::string & | id () const throw () |
| Retrieve the name of this node .
|
void | id (const std::string &node_id) throw ( std::bad_alloc ) |
| Set the name of the node .
|
const openvrml::scope & | scope () const throw () |
| Get the scope to which the node belongs.
|
openvrml::scene * | scene () const throw () |
| Get the scene with which the node is associated.
|
const std::vector
< boost::intrusive_ptr< node > > & | impl_nodes () const throw () |
| Get the implementation nodes of a PROTO instance.
|
std::ostream & | print (std::ostream &out, size_t indent) const |
| Pretty print.
|
void | initialize (openvrml::scene &scene, double timestamp) throw ( std::bad_alloc ) |
| Initialize the node.
|
std::auto_ptr< field_value > | field (const std::string &id) const throw ( unsupported_interface , std::bad_alloc ) |
| Generalized field accessor.
|
openvrml::event_listener & | event_listener (const std::string &id) throw ( unsupported_interface ) |
| Get an event listener.
|
openvrml::event_emitter & | event_emitter (const std::string &id) throw ( unsupported_interface ) |
| Get an event emitter.
|
void | shutdown (double timestamp) throw () |
| Shut down the node.
|
bool | modified () const throw ( boost::thread_resource_error ) |
| Determine whether the node has been modified.
|
void | modified (bool value) throw ( boost::thread_resource_error ) |
| Set the modified flag.
|
Abstract base class for nodes that represent a bounded volume in the scene graph.
Get this node's bounding volume.
Nodes that have no bounding volume, or have a difficult to calculate bvolume (like, say, Extrusion or Billboard) can just return an infinite bsphere. Note that returning an infinite bvolume means that all the node's ancestors will also end up with an infinite bvolume, and will never be culled.
Delegates to do_bounding_volume
.
- Returns
- a maximized bounding volume.