Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members | Related Pages

openvrml::vrml97_node::visibility_sensor_node Class Reference

VisibilitySensor node instances. More...

Inheritance diagram for openvrml::vrml97_node::visibility_sensor_node:

Inheritance graph
[legend]
Collaboration diagram for openvrml::vrml97_node::visibility_sensor_node:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 visibility_sensor_node (const node_type &type, const scope_ptr &scope)
 Construct.

virtual ~visibility_sensor_node () throw ()
 Destroy.

virtual void render (openvrml::viewer &viewer, rendering_context context)
 Generate visibility events.


Private Member Functions

void process_set_center (const field_value &value, double timestamp) throw (std::bad_cast)
 set_center eventIn handler.

void process_set_enabled (const field_value &value, double timestamp) throw (std::bad_cast)
 set_enabled eventIn handler.

void process_set_size (const field_value &value, double timestamp) throw (std::bad_cast)
 set_size eventIn handler.


Private Attributes

sfvec3f center
 center exposedField.

sfbool enabled
 enabled exposedField.

sfvec3f size
 size exposedField.

sfbool active
 isActive eventOut.

sftime enterTime
 enterTime eventOut.

sftime exitTime
 exitTime eventOut.


Friends

class visibility_sensor_class
 Class object for VisibilitySensor instances.


Detailed Description

VisibilitySensor node instances.


Constructor & Destructor Documentation

openvrml::vrml97_node::visibility_sensor_node::visibility_sensor_node const node_type type,
const scope_ptr scope
 

Construct.

Parameters:
type the node_type associated with the instance.
scope the scope that the new node will belong to.

Member Function Documentation

void openvrml::vrml97_node::visibility_sensor_node::process_set_center const field_value value,
double  timestamp
throw (std::bad_cast) [private]
 

set_center eventIn handler.

Parameters:
value an sfvec3f value.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfvec3f.

void openvrml::vrml97_node::visibility_sensor_node::process_set_enabled const field_value value,
double  timestamp
throw (std::bad_cast) [private]
 

set_enabled eventIn handler.

Parameters:
value an sfbool value.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfbool.

void openvrml::vrml97_node::visibility_sensor_node::process_set_size const field_value value,
double  timestamp
throw (std::bad_cast) [private]
 

set_size eventIn handler.

Parameters:
value an sfvec3f value.
timestamp the current time.
Exceptions:
std::bad_cast if value is not an sfvec3f.

void openvrml::vrml97_node::visibility_sensor_node::render openvrml::viewer viewer,
rendering_context  context
[virtual]
 

Generate visibility events.

This is in a render() method since the it needs to be computed with respect to the accumulated transformations above it in the scene graph. Move to update() when xforms are accumulated in Groups...

Reimplemented from openvrml::node.