Chapter 3 Node Reference
This chapter provides a detailed definition of the
syntax and semantics of each node in VRML. The table of contents list
menu on the left lists the topics in this chapter.
3.1 Introduction
In this chapter, the first item in each section is the public interface
specification for the node. This interface defines the names and types
of the fields and events for the node, as well as the default values
for the fields of the node. Note that this syntax is not the
actual file format syntax. However, the parts of the interface that
are identical to the file syntax are in bold. For example, the
following defines the Collision node's public interface and file format:
Collision {
eventIn MFNode addChildren
eventIn MFNode removeChildren
exposedField MFNode children []
exposedField SFBool collide TRUE
field SFVec3f bboxCenter 0 0 0 # (-
,
)
field SFVec3f bboxSize -1 -1 -1 # (0,
) or -1,-1,-1
field SFNode proxy NULL
eventOut SFTime collideTime
}
Note that the interface specification also includes the value ranges
for the node's fields and exposedFields (where appropriate). Parentheses
imply that the range bound is exclusive, while brackets imply that the
range value is inclusive. For example, a range of (-
,1] defines the lower bound as -
exclusively and the upper bound as 1 inclusively.
The fields and events contained within the public interface of node
types are ordered as follows:
- eventIns, in alphabetical order;
- exposedFields, in alphabetical order;
- fields, in alphabetical order;
- eventOuts, in alphabetical order.
