Home Hierarchy Members Alphabetical Related Pages

NurbsGroup Class Reference
[Standard Node Types]

#include <nurbsgroup.h>

Inherits Node.

Inheritance diagram for NurbsGroup:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 NurbsGroup (const char *name="")
virtual ~NurbsGroup ()
virtual unsigned int nbFields () const
virtual FieldHandle field (const std::string &n)
virtual FieldHandle field (const unsigned int i)
virtual bool isSetToDefaultValue (const unsigned int i) const
virtual unsigned int nbEventsIn () const
virtual EventInHandle eventIn (const std::string &n)
virtual EventInHandle eventIn (const unsigned int i)
virtual unsigned int nbEventsOut () const
virtual EventOutHandle eventOut (const std::string &n)
virtual EventOutHandle eventOut (const unsigned int i)
const char * typeName () const
virtual Nodeduplicate () const
virtual Nodeduplicate (std::map< const Node *, Node * > &) const

Public Attributes

Exposed Fields
A field that is capable of receiving events via an eventIn to change its value(s), and generating events via an eventOut when its value(s) change.

MFNode children
SFFloat tessellationScale
Fields
A property or attribute of a node. Each node type has a fixed set of fields. Fields may contain various kinds of data and one or many values. Each field has a default value.

SFVec3f bboxCenter
SFVec3f bboxSize
Events In
EventIn< MFNodeaddChildren
EventIn< MFNoderemoveChildren
EventIn< MFNodeset_children
EventIn< SFFloatset_tessellationScale
Events Out
EventOut< MFNodechildren_changed
EventOut< SFFloattessellationScale_changed

Detailed Description

Here is the documentation for this node type, from the ISO standard.

6.46 NurbsGroup

The NurbsGroup node groups a set of NurbsSurface nodes to a common group. This provides a hint to the browser to treat the set of NurbsSurface nodes appearing in a Shape node in children as a unit during tessellation to enforce tessellation continuity along borders. The tessellationScale parameter scales the tessellation values in lower-level NurbsCurve and NurbsSurface nodes. If a set of NurbsSurfaces uses a matching set of control points along the borders, this results in a common tessellation stepping.


Constructor & Destructor Documentation

NurbsGroup const char *  name = ""  ) 
 

Construct a node with all its fields set to default value, which is equivalent to the code below:

  tessellationScale = 1;
  bboxCenter.setXYZ(0,0,0);
  bboxSize.setXYZ(-1,-1,-1);

~NurbsGroup  )  [virtual]
 

Virtual destructor, does nothing


Member Function Documentation

wrl::Node * duplicate std::map< const Node *, Node * > &   )  const [virtual]
 

Implements Node.

wrl::Node * duplicate  )  const [virtual]
 

Returns a deep copy of this node, that is a fully independant node with all children (if any) also copied. This is mainly useful for instanciating protos.

Implements Node.

wrl::Node::EventInHandle eventIn const unsigned int  n  )  [virtual]
 

Return a handle on the i th event in of the node or a "unknown" typed handle if there is no such node. Here is how i is related to fields:

  • 0 : addChildren
  • 1 : removeChildren
  • 2 : set_children
  • 3 : set_tessellationScale

This function is useful, with nbEventsIn() if you want to traverse all events in of a Node.

Implements Node.

wrl::Node::EventInHandle eventIn const std::string &  n  )  [virtual]
 

Return a handle on the event in named n of the node or a "unknown" typed handle if there is no such event. Valid names are:

  • addChildren
  • removeChildren
  • set_children
  • set_tessellationScale

Implements Node.

wrl::Node::EventOutHandle eventOut const unsigned int  n  )  [virtual]
 

Return a handle on the i th event out of the node or a "unknown" typed handle if there is no such node. Here is how i is related to fields:

  • 0 : children_changed
  • 1 : tessellationScale_changed This function is useful, with nbEventsOut() if you want to traverse all events in of a Node.

Implements Node.

wrl::Node::EventOutHandle eventOut const std::string &  n  )  [virtual]
 

Return a handle on the event out named n of the node or a "unknown" typed handle if there is no such event. Valid names are:

  • children_changed
  • tessellationScale_changed

Implements Node.

wrl::Node::FieldHandle field const unsigned int  n  )  [virtual]
 

Return a handle on the i th field of the node or a "unknown" typed handle if there is no such node. Here is how i is related to fields:

  • 0 : children
  • 1 : tessellationScale
  • 2 : bboxCenter
  • 3 : bboxSize This function is useful, with nbFields() if you want to traverse all fields of a Node.

Implements Node.

wrl::Node::FieldHandle field const std::string &  n  )  [virtual]
 

Return a handle on the field named n of the node or a "unknown" typed handle if there is no such field. Valid names are:

  • children
  • tessellationScale
  • bboxCenter
  • bboxSize

Implements Node.

bool isSetToDefaultValue const unsigned int  i  )  const [virtual]
 

Implements Node.

unsigned int nbEventsIn  )  const [inline, virtual]
 

Returns the number of events in for this node type.

Implements Node.

unsigned int nbEventsOut  )  const [inline, virtual]
 

Returns the number of events out for this node type.

Implements Node.

unsigned int nbFields  )  const [inline, virtual]
 

Returns the number of fields (exposed or not) for this node type.

Implements Node.

const char * typeName  )  const [inline, virtual]
 

Returns "NurbsGroup". Useful for printing.

Implements Node.


Member Data Documentation

EventIn<MFNode> addChildren
 

See Detailed Description for meaning of this event.

SFVec3f bboxCenter
 

See Detailed Description for meaning of this field. Default value is set to

       bboxCenter.setXYZ(0,0,0);

SFVec3f bboxSize
 

See Detailed Description for meaning of this field. Default value is set to

       bboxSize.setXYZ(-1,-1,-1);

MFNode children
 

See Detailed Description for meaning of this field. Default value is set to MFNode default value

EventOut<MFNode> children_changed
 

Changed event associated to exposedField children

EventIn<MFNode> removeChildren
 

See Detailed Description for meaning of this event.

EventIn<MFNode> set_children
 

Set event associated to exposedField children

EventIn<SFFloat> set_tessellationScale
 

Set event associated to exposedField tessellationScale

SFFloat tessellationScale
 

See Detailed Description for meaning of this field. Default value is set to

EventOut<SFFloat> tessellationScale_changed
 

Changed event associated to exposedField tessellationScale


Generated on 24 Feb 2005 with doxygen version 1.3.9.1. Valid HTML 4.0! Valid CSS!