| 1 |
< |
.\" SCCSid "$SunId$ LBL" |
| 1 |
> |
.\" RCSid "$Id$" |
| 2 |
|
.nr PS 11 |
| 3 |
|
.ps 11 |
| 4 |
|
.nr VS 12 |
| 1903 |
|
require a normal direction. |
| 1904 |
|
An |
| 1905 |
|
.UL f |
| 1906 |
+ |
or |
| 1907 |
+ |
.UL fh |
| 1908 |
|
entity will interpolate vertex normals if given, and |
| 1909 |
|
use the polygon plane normal otherwise. |
| 1910 |
|
See the |
| 1944 |
|
.UL cone, |
| 1945 |
|
.UL cyl, |
| 1946 |
|
.UL f, |
| 1947 |
+ |
.UL fh, |
| 1948 |
|
.UL n, |
| 1949 |
|
.UL p, |
| 1950 |
|
.UL prism, |
| 1989 |
|
.UL cone, |
| 1990 |
|
.UL cyl, |
| 1991 |
|
.UL f, |
| 1992 |
+ |
.UL fh, |
| 1993 |
|
.UL n, |
| 1994 |
|
.UL prism, |
| 1995 |
|
.UL ring, |
| 2036 |
|
SEE ALSO |
| 2037 |
|
.LP |
| 2038 |
|
.UL f, |
| 2039 |
+ |
.UL fh, |
| 2040 |
|
.UL p, |
| 2041 |
|
.UL prism, |
| 2042 |
|
.UL ring, |
| 2179 |
|
when normals are used. |
| 2180 |
|
Also, specified normals should point in the general direction of the |
| 2181 |
|
surface for best results. |
| 2182 |
+ |
.LP |
| 2183 |
+ |
Vertices should not be shared between any two contours. |
| 2184 |
+ |
I.e., a hole should not share a vertex or edge with the perimeter or |
| 2185 |
+ |
another hole, or incorrect rendering may result. |
| 2186 |
|
.SH |
| 2187 |
|
EXAMPLE |
| 2188 |
|
.DS |
| 2250 |
|
.UL cone, |
| 2251 |
|
.UL cyl, |
| 2252 |
|
.UL f, |
| 2253 |
+ |
.UL fh, |
| 2254 |
|
.UL m, |
| 2255 |
|
.UL prism, |
| 2256 |
|
.UL ring, |
| 2308 |
|
.LP |
| 2309 |
|
.UL cone, |
| 2310 |
|
.UL f, |
| 2311 |
+ |
.UL fh, |
| 2312 |
|
.UL m, |
| 2313 |
|
.UL prism, |
| 2314 |
|
.UL ring, |
| 2381 |
|
.LP |
| 2382 |
|
.UL cyl, |
| 2383 |
|
.UL f, |
| 2384 |
+ |
.UL fh, |
| 2385 |
|
.UL m, |
| 2386 |
|
.UL prism, |
| 2387 |
|
.UL ring, |
| 2448 |
|
.UL cyl, |
| 2449 |
|
.UL cone, |
| 2450 |
|
.UL f, |
| 2451 |
+ |
.UL fh, |
| 2452 |
|
.UL m, |
| 2453 |
|
.UL ring, |
| 2454 |
|
.UL sph, |
| 2505 |
|
.UL cyl, |
| 2506 |
|
.UL cone, |
| 2507 |
|
.UL f, |
| 2508 |
+ |
.UL fh, |
| 2509 |
|
.UL m, |
| 2510 |
|
.UL prism, |
| 2511 |
|
.UL sph, |
| 2566 |
|
.UL cyl, |
| 2567 |
|
.UL cone, |
| 2568 |
|
.UL f, |
| 2569 |
+ |
.UL fh, |
| 2570 |
|
.UL m, |
| 2571 |
|
.UL prism, |
| 2572 |
|
.UL ring, |
| 3927 |
|
|
| 3928 |
|
typedef struct { |
| 3929 |
|
int clock; /* incremented each change -- resettable */ |
| 3930 |
+ |
char *client_data; /* pointer to private client data */ |
| 3931 |
|
FVECT p, n; /* point and normal */ |
| 3932 |
|
} C_VERTEX; /* vertex context */ |
| 3933 |
|
.DE |
| 3949 |
|
(See the |
| 3950 |
|
.I xf_handler |
| 3951 |
|
page.)\0 |
| 3952 |
+ |
The |
| 3953 |
+ |
.I client_data |
| 3954 |
+ |
pointer may be used to index private application data for vertex |
| 3955 |
+ |
linking, etc. |
| 3956 |
+ |
This pointer is initialized to NULL when the context is created, |
| 3957 |
+ |
and otherwise ignored by the parser library. |
| 3958 |
|
.LP |
| 3959 |
< |
It is possible but not recommended to alter the contents of the |
| 3959 |
> |
It is possible but not recommended to alter the shared contents of the |
| 3960 |
|
vertex structure returned by |
| 3961 |
|
.I c_getvert. |
| 3962 |
|
Normally it is read during the |
| 4077 |
|
|
| 4078 |
|
typedef struct { |
| 4079 |
|
int clock; /* incremented each change */ |
| 4080 |
+ |
char *client_data; /* pointer to private client data */ |
| 4081 |
|
short flags; /* what's been set */ |
| 4082 |
|
short ssamp[C_CNSS]; /* spectral samples, min wl to max */ |
| 4083 |
|
long ssum; /* straight sum of spectral values */ |
| 4093 |
|
This is a convenient way to keep track of whether or not a color has |
| 4094 |
|
changed since its last use. |
| 4095 |
|
The |
| 4096 |
+ |
.I client_data |
| 4097 |
+ |
pointer may be used to index private application data. |
| 4098 |
+ |
This pointer is initialized to NULL when the context is created, |
| 4099 |
+ |
and otherwise ignored by the parser library. |
| 4100 |
+ |
The |
| 4101 |
|
.I flags |
| 4102 |
|
member indicates which color representations have been assigned, |
| 4103 |
|
and is an inclusive OR of one or more of the following: |
| 4242 |
|
|
| 4243 |
|
typedef struct { |
| 4244 |
|
int clock; /* incremented each change -- resettable */ |
| 4245 |
+ |
char *client_data; /* pointer to private client data */ |
| 4246 |
|
int sided; /* 1 if surface is 1-sided, 0 for 2-sided */ |
| 4247 |
|
float nr, ni; /* index of refraction, real and imaginary */ |
| 4248 |
|
float rd; /* diffuse reflectance */ |
| 4266 |
|
desired. |
| 4267 |
|
This is a convenient way to keep track of whether or not a material has |
| 4268 |
|
changed since its last use. |
| 4269 |
+ |
The |
| 4270 |
+ |
.I client_data |
| 4271 |
+ |
pointer may be used to index private application data. |
| 4272 |
+ |
This pointer is initialized to NULL when the context is created, |
| 4273 |
+ |
and otherwise ignored by the parser library. |
| 4274 |
|
.LP |
| 4275 |
|
All reflectance and transmittance values correspond to normal |
| 4276 |
|
incidence, and may vary as a function of angle depending on the |