### 7.1 Conventions Used In Describing Argument Types

The following symbols are used to describe argument types in the documentation for GCL functions.

appearance
  is an OOGL appearance specification.
cam-id
  is an id that refers to a camera.
camera
  is an OOGL camera specification.
geom-id
  is an id that refers to a geometry.
geometry
  is an OOGL geometry specification.
id
  is a string which names a geometry or camera. Besides those you create, valid ones are:
  `World, world, worldgeom, g0`
    the collection of all geom's
  `target`
    selected target object (cam or geom)
  `center`
    selected center-of-motion object
  `targetcam`
    last selected target camera
  `targetgeom`
    last selected target geom
  `focus`
    camera where cursor is (or most recently was)
  `allgeoms`
    all geom objects
  `allcams`
    all cameras
  `default, defaultcam, prototype`
    future cameras inherit default's settings

  The following ids are used to name coordinate systems, e.g. in `pick` and `write` commands:

  `World, world, worldgeom, g0`
    the world, within which all other geoms live.
  `universe`
    the universe, in which the World, lights and cameras live. Cameras' world2cam transforms might better be called universe2cam, etc.
  `self`
    "this Geomview object". Transform from an object to `self` is the identity; writing its geometry gives the object itself with no enclosing transform; picked points appear in the object's coordinates.
  `primitive`
    (for `pick` only) Picked points appear in the coordinate system of the lowest-level OOGL primitive.

  A name is also an acceptable id. Given names are made unique by appending numbers if necessary (i.e. `foo<2>`). Every geom is also named g[n] and every camera is also named c[n] (`g0` is always the worldgeom): this name is used as a prefix to keyboard commands and can also be used as a GCL id. Numbers are reused after an object is deleted. Both names are shown in the Object browser.

statement
  represents a function call. Function calls have the form `(func arg1 arg2 ... )`, where `func` is the name of the function and `arg1`, `arg2`, ... are the arguments.
transform
  is an OOGL 4x4 transformation matrix.
ntransform
  is an OOGL (N+1)x(N+1) transformation matrix.
window
  is an OOGL winddow specification.