NAME¶
xform - transform a RADIANCE scene description
SYNOPSIS¶
xform [
-c ][
-I ][
-n name ][
-m newmod ][
-f argfile ][
xf0 ][
-a n1 xf1 .. ][
-i 1 xff ]
file ..
DESCRIPTION¶
Xform transforms each scene description
file according to the
options given. If no
file is specified, the standard input is read. The
-c option causes commands in the input not to be expanded. The default
is to execute all in line commands. (See note below about file names.)
The
-n option causes all identifiers to be prefixed with
name.
The
-m option causes all surfaces to be given the modifier
newmod. The
-I option causes all surfaces to be inverted,
reversing their surface normal orientations. These options are followed by the
transformation options, which are described below.
The
-f option causes the
xform command line to be constructed from
the given file, by inserting each line of the file at the current point in the
command argument list. Each line in the file will result in a logically
separate invocation of
xform, and may may contain any valid
xform arguments, including nested
-f options. This is a
convenient way to specify multiple copies of an object that do not fit a
regular array pattern, without having to actually execute
xform many
times. Separate scene files may be specified this way as well, but remember
that the constructed command line must fit the format of initial options
(-n, -m, -c, -I) followed by the transform then the scene files. No
initial options may appear after the first transform option, and no transform
options will be understood after the first named file. In the special case
where the argument to the
-f option is a hyphen ('-'),
xform
will take its arguments from the standard input. Note that
xform cannot
simultaneously take its scene information from the standard input if the
option is used in this way. Competely empty lines and lines beginning with a
pound sign ('#') will be silently ignored. Beginning "!xform" or
"xform" command names will also be ignored.
If one or more scene files are given on the command line,
xform will
search the RADIANCE library directories for each file. (No search takes place
if a file name begins with a '.', '/' or '~' character.) Unless the
-c option is present,
xform will also change to that file's
directory before loading it. Thus, any commands executed within that file will
happen in that file's directory, which simplifies object hierarchy
construction.
The transformation consists of a sequence of operations which are executed in
the order they appear.
OPTIONS¶
- -t x y z
- Translate the scene along the vector x y z .
- -rx degrees
- Rotate the scene degrees about the x axis. A
positive rotation corresponds to counter-clockwise when looking down the
axis.
- -ry degrees
- Rotate the scene degrees about the y axis.
- -rz degrees
- Rotate the scene degrees about the z axis.
- -s factor
- Scale the scene by factor.
- -mx
- Mirror the scene about the yz plane.
- -my
- Mirror the scene about the xz plane.
- -mz
- Mirror the scene about the xy plane.
- -i count
- Iterate (repeat) the following transformation (up to the
next -i option) count times. This option is primarily to
support the -a option, which is described below.
Arrays¶
An array is a repeated transformation that results in a repeated object. It is
specified using the
-a option, which takes the number to repeat as its
argument. The objects will step by the transformation given between this
-a option and the next
-a or
-i option. The first object
will have zero applications of the transform. A two-dimensional array is given
by two different transformations each preceded by an array count.
EXAMPLE¶
To rotate ``book'' 30 degrees about the x axis then move 20 in y, prepending the
name book1:
-
- xform -n book1 -rx 30 -t 0 20 0 book > book1
To expand all commands and see what information is actually used by RADIANCE:
-
- xform scene | more
To create a two-dimensional array of 20 lights, after an initial rotation and
followed by a global translation (no command expansion):
-
- xform -c -rz 90 -a 5 -t 2 0 0 -a 4 -t 0 1.5 0 -i 1 -t 0 0
10 light
ENVIRONMENT¶
RAYPATH path to search for scene files
AUTHOR¶
Greg Ward
BUGS¶
Only regular (distortion-free) transformations are allowed.
SEE ALSO¶
genrbox(1),
gensurf(1),
oconv(1),
replmarks(1),
rpict(1),
rvu(1)