############################################################################
#
#	File:     vrml1lib.icn
#
#	Subject:  Procedures to support construction of VRML 1.0 files
#
#	Author:   Ralph E. Griswold
#
#	Date:     November 19, 1997
#
############################################################################
#
#  This file is in the public domain.
#
############################################################################
#
#  This file contains record declarations for VRML 1.0 nodes.
#
#  Note: Although VRML 1.0 allows node fields to be given in any order,
#  they must be specified in the order given in the record declarations
#  that follow.
#
#  Omitted (null-valued) fields are ignored on output.
#
#  Group nodes require list arguments for lists of nodes.
#  
############################################################################
#
#  See also:  vrml2lib.icn, vrml.icn
#
############################################################################

record AsciiText(
   string,
   spacing,
   justification,
   width
   )

record Color(
   color
   )

record Comment(
   text
   )

record Cone(
   height,
   bottomRadius,
   parts
   )

record Coordinate3(
   point
   )

record Cube(
   width,
   height,
   depth
   )

record Cylinder(
   radius,
   height,
   parts
   )

record DEF(
   name,
   node
   )

record DirectionalLight(
   on,
   intensity,
   color,
   direction
   )

record FontStyle(
   family,
   style,
   size
   )

record Group(
   list
   )

record Info(
   string
   )

record Include(
   name
   )

record IndexedFaceSet(
   coordIndex,
   materialIndex,
   normalIndex,
   textureCoordIndex
   )

record IndexedLineSet(
   coordIndex,
   materialIndex,
   normalIndex,
   textureCoordIndex
   )

record LOD(
   center,
   range
   )

record Material(
   diffuseColor,
   ambientColor,
   emissiveColor,
   shininess,
   specularColor,
   transparency
   )

record MaterialBinding(
   value
   )

record MatrixTransform(
   matrix
   )

record Normal(
   vector
   )

record NormalBinding(
   value
   )

record OrthographicCamera(
   position,
   orientation,
   focalDistance,
   height
   )

record PerspectiveCamera(
   position,
   orientation,
   focalDistance,
   heightAngle,
   nearDistance,
   farDistance
   )

record PointLight(
   on,
   location,
   radius,
   color
   )

record PointSet(
   startIndex,
   numPoints
   )

record Rotation(
   rotation
   )

record Scale(
   scaleFactor
   )

record Separator(
   list,
   renderCulling
   )

record ShapeHints(
   vertexOrdering,
   shapeType,
   faceType,
   creaseAngle
   )

record Sphere(
   radius
   )

record SpotLight(
   on,
   location,
   direction,
   intensity,
   color,
   dropOffRate,
   cutOffAngle
   )

record Switch(
   whichChild,
   children
   )

record Texture2Transform(
   translation,
   rotation,
   scaleFactor,
   center
   )
record TextureCoordinate2(
   point
   )

record Transform(
   translation,
   rotation,
   scaleFactor,
   scaleOrientation,
   center
   )

record TransformSeparator(
   children
   )

record Translation(
   translation
   )

record USE(
   name
   )

record WWWAnchor(
   name,
   description,
   map
   )

record WWWInline(
   name,
   bboxSize,
   bboxCenter
   )
