Main Page   Namespace List   Class Hierarchy   Compound List   Namespace Members   Compound Members   Related Pages  

PointSet Class Reference

Represents PointSet node instances. More...

Inheritance diagram for PointSet:

AbstractGeometry AbstractBase GeometryNode Node Node List of all members.

Public Methods

 PointSet (const NodeType &nodeType, const ScopePtr &scope)
 Constructor.

virtual ~PointSet () throw ()
 Destructor.

virtual void updateModified (NodePath &path, int flags=0x003)
 Propagate the bvolume dirty flag from children to parents.

virtual bool isModified () const
 Determine whether the node has been modified.

virtual Viewer::Object insertGeometry (Viewer &viewer, VrmlRenderContext context)
 Insert this geometry into viewer's display list.

virtual const BVolumegetBVolume () const
 Get the bounding volume.


Private Methods

void processSet_color (const FieldValue &sfnode, double timestamp) throw (std::bad_cast, std::bad_alloc)
 set_color eventIn handler.

void processSet_coord (const FieldValue &sfnode, double timestamp) throw (std::bad_cast, std::bad_alloc)
 set_coord eventIn handler.

void recalcBSphere ()
 Recalculate the bounding volume.


Private Attributes

SFNode color
 color exposedField.

SFNode coord
 coord exposedField.

BSphere bsphere
 Bounding volume.


Friends

class PointSetClass
 Class object for PointSet instances.


Detailed Description

Represents PointSet node instances.


Constructor & Destructor Documentation

PointSet const NodeType   nodeType,
const ScopePtr   scope
 

Constructor.

Parameters:
nodeType the NodeType associated with the node.
scope the Scope to which the node belongs.

~PointSet   throw () [virtual]
 

Destructor.


Member Function Documentation

const BVolume * getBVolume   const [virtual]
 

Get the bounding volume.

Returns:
the bounding volume associated with the node.

Reimplemented from Node.

Viewer::Object insertGeometry Viewer   viewer,
VrmlRenderContext    context
[virtual]
 

Insert this geometry into viewer's display list.

Parameters:
viewer a Viewer.
context the rendering context.

Implements GeometryNode.

bool isModified   const [virtual]
 

Determine whether the node has been modified.

Returns:
true if the node or one of its children has been modified, false otherwise.

Reimplemented from Node.

void processSet_color const FieldValue   sfnode,
double    timestamp
throw (std::bad_cast, std::bad_alloc) [private]
 

set_color eventIn handler.

Parameters:
sfnode an SFNode value.
timestamp the current time.
Exceptions:
std::bad_cast if sfnode is not an SFNode.
std::bad_alloc if memory allocation fails.

void processSet_coord const FieldValue   sfnode,
double    timestamp
throw (std::bad_cast, std::bad_alloc) [private]
 

set_coord eventIn handler.

Parameters:
sfnode an SFNode value.
timestamp the current time.
Exceptions:
std::bad_cast if sfnode is not an SFNode.
std::bad_alloc if memory allocation fails.

void recalcBSphere   [private]
 

Recalculate the bounding volume.

void updateModified NodePath &    path,
int    flags = 0x003
[virtual]
 

Propagate the bvolume dirty flag from children to parents.

Parameters:
path stack of ancestor nodes.
flags 1 indicates normal modified flag, 2 indicates the bvolume dirty flag, 3 indicates both.

Reimplemented from Node.


Friends And Related Function Documentation

PointSetClass [friend]
 

Class object for PointSet instances.


Member Data Documentation

BSphere bsphere [private]
 

Bounding volume.

SFNode color [private]
 

color exposedField.

SFNode coord [private]
 

coord exposedField.