H3D::X3DShapeNode Class Reference
[Abstract nodes.]

This is the base node type for all Shape nodes. More...

#include <X3DShapeNode.h>

Inheritance diagram for H3D::X3DShapeNode:

Inheritance graph
List of all members.

Public Types

typedef DependentSFNode< X3DAppearanceNode,
FieldRef< H3DDisplayListObject,
H3DDisplayListObject::DisplayList,
&H3DDisplayListObject::displayList >,
true > 
SFAppearanceNode
 SFAppearanceNode is dependent on the displayList field of its encapsulated X3DAppearanceNode node, i.e.
typedef TypedSFNode< X3DGeometryNodeSFHapticGeometry
 SFHapticGeometry contains a X3DGeometryNode.

Public Member Functions

 X3DShapeNode (Inst< SFAppearanceNode > _appearance=0, Inst< SFGeometryNode > _geometry=0, Inst< SFHapticGeometry > _hapticGeometry=0, Inst< SFNode > _metadata=0, Inst< SFBound > _bound=0, Inst< SFVec3f > _bboxCenter=0, Inst< SFVec3f > _bboxSize=0)
 Constructor.
virtual void initialize ()
 Sets up the bound field using the bboxCenter and bboxSize fields.
virtual void render ()
 Render the shape using OpenGL.

Public Attributes

auto_ptr< SFAppearanceNodeappearance
 The field containing the X3DAppearance node to be used when rendering the shape.
auto_ptr< SFGeometryNodegeometry
 Contains the X3DGeometryNode to be rendered.
auto_ptr< SFHapticGeometryhapticGeometry
 If specified, contains a X3DGeometryNode to be rendered haptically.
bool use_geometry_bound

Static Public Attributes

static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
static bool disable_lighting_if_no_app = true
 Set to true if lighting should be disabled when no Appearance or Material node has been specified as per X3D spec.

Classes

class  SFGeometryNode
 SFGeometryNode is dependent on the displayList field of its encapsulated X3DGeometryNode node, i.e. More...

Detailed Description

This is the base node type for all Shape nodes.

Internal routes:
X3DShapeNode.dot


Member Typedef Documentation

typedef DependentSFNode< X3DAppearanceNode, FieldRef<H3DDisplayListObject, H3DDisplayListObject::DisplayList, &H3DDisplayListObject::displayList >, true > H3D::X3DShapeNode::SFAppearanceNode
 

SFAppearanceNode is dependent on the displayList field of its encapsulated X3DAppearanceNode node, i.e.

an event from that field will trigger an event from the SFAppearanceNode as well.


Member Function Documentation

virtual void H3D::X3DShapeNode::initialize  )  [inline, virtual]
 

Sets up the bound field using the bboxCenter and bboxSize fields.

If bboxSize is (-1, -1, -1) the bound will be the bound of the geometry field. Otherwise it will be a BoxBound with center and origin determined by the bboxCenter and bboxOrigin fields.


Member Data Documentation

auto_ptr< SFAppearanceNode > H3D::X3DShapeNode::appearance
 

The field containing the X3DAppearance node to be used when rendering the shape.

Access type: inputOutput

X3DShapeNode_appearance.dot

bool X3DShapeNode::disable_lighting_if_no_app = true [static]
 

Set to true if lighting should be disabled when no Appearance or Material node has been specified as per X3D spec.

Will be set to false in e.g. H3DWindowNode if a default Material node has been specified in a DefaultAppearance option node.

auto_ptr< SFGeometryNode > H3D::X3DShapeNode::geometry
 

Contains the X3DGeometryNode to be rendered.

Access type: inputOutput

X3DShapeNode_geometry.dot

auto_ptr< SFHapticGeometry > H3D::X3DShapeNode::hapticGeometry
 

If specified, contains a X3DGeometryNode to be rendered haptically.

If NULL the geometry in the geometry field will be used.

Access type: inputOutput

X3DShapeNode_hapticGeometry.dot


Generated on Thu Aug 24 12:40:27 2006 for H3D API by  doxygen 1.4.5