Table of Contents

gensurf - generate a RADIANCE description of a curved
surface

**gensurf** **mat** **name** **`x(s,t)'** **`y(s,t)'** **`z(s,t)'** **m** **n** [ **-e** **expr** ][
**-f** **file** ][ **-s** ]

**gensurf** **mat** **name** **`x(s,t)'** **`y(s,t)'** **dfile** **m** **n** [ **-e** **expr** ][ **-f**
**file** ][ **-s** ]

**gensurf** **mat** **name** **dfile** **dfile** **dfile** **m** **n** [ **-s** ]

*Gensurf* produces a RADIANCE scene description of a
functional surface defined by the parametric equations
*x*(*s*,*t*), *y*(*s*,*t*), and *z*(*s*,*t*). The surface normal is defined by
the right hand rule as applied to (*s*,*t*). *S* will vary from 0
to 1 in steps of *1*/*m*, and *t* will vary from 0 to 1 in steps
of *1*/*n*. The surface will be composed of *2***m***n* or fewer
triangles and quadrilaterals. The expressions are of the
same type used in RADIANCE function files. Auxiliary
expressions and/or files may be specified in any number of
-*e* and -*f* options. The -*s* option adds smoothing (surface
normal interpolation) to the surface.
The second invocation form reads z data values from the file
*dfile*. This file must give either m*n or (m+1)*(n+1)
floating point z values. If m*n values are given, then the
values correspond to the centroid of each quadrilateral
region. If (m+1)*(n+1) values are given, then the values
correspond to the vertices of each quadrilateral region.
The ordering of the data in the file is such that the s
values are changing faster than the t values. If a minus
('-') is given for *dfile*, then the values are read from the
standard input.

The third invocation form is used to read coordinate
triplets from a file or the standard input. The three *dfile*
arguments must all be the same, and the corresponding file
must contain three floating point values for each point
location. The ordering and other details are the same as
those described for z value files above.

To generate a tesselated sphere:
gensurf crystal ball `sin(PI*s)*cos(2*PI*t)' `cos(PI*s)'
`sin(PI*s)*sin(2*PI*t)' 7 10

To generate a 10x20 smoothed height field from 12 recorded
vertex z values:

gensurf dirt ground `10*s' `20*t' height.dat 2 3 -s

Greg Ward

The smoothing operation requires that functions be defined
beyond the [0,1] boundaries of s and t.

calc(1), genbox(1), genrev(1), genworm(1), rpict(1),
rview(1), xform(1)

## Header and Footer

GENSURF(1) RADIANCE (11/15/93) GENSURF(1)

Page 1 (printed 7/17/96)

**Table of Contents**