The Annotated VRML 97 Reference

1 Intro     Concepts     3 Nodes     4 Fields/Events    Conformance
A Grammar     B Java     C JavaScript     D Examples     E Related Info    References
Quick Java         Quick JavaScript         Quick Nodes   
 

  About the Book
  
Help
  Copyright © 1997-99
  Purchase the book from Amazon.com

Chapter 3:
Node Reference


Intro
Anchor
Appearance
AudioClip
Background
Billboard
Box
Collision
Color
ColorInterpolator
Cone
Coordinate
CoordinateInterpolator
Cylinder
CylinderSensor
DirectionalLight
ElevationGrid
Extrusion
Fog
FontStyle
Group
ImageTexture
IndexedFaceSet
IndexedLineSet
Inline
LOD
Material
MovieTexture
NavigationInfo
Normal
NormalInterpolator
OrientationInterpolator
PixelTexture
PlaneSensor
PointLight
PointSet
PositionInterpolator
ProximitySensor
ScalarInterpolator
Script
Shape
Sound
Sphere
SphereSensor
SpotLight
Switch
Text
TextureCoordinate
TextureTransform
TimeSensor
TouchSensor
Transform
Viewpoint
VisibilitySensor
WorldInfo

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    # (-INF,INF)
  field        SFVec3f  bboxSize    -1 -1 -1 # (0,INF) 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 (-INF,1] defines the lower bound as -INF exclusively and the upper bound as 1 inclusively.

The fields and events contained within the public interface of node types are ordered as follows:

  1. eventIns, in alphabetical order;
  2. exposedFields, in alphabetical order;
  3. fields, in alphabetical order;
  4. eventOuts, in alphabetical order.
---------- separator bar ------------