26.01.2015 Views

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

The RenderMan Interface - Paul Bourke

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>The</strong> number of tags is determined implicitly by the length of the tags array, and must<br />

match the value as determined from the nargs array.<br />

EXAMPLE<br />

SubdivisionMesh ”catmull-clark” [4 4 4 4 4 4 4 4 4] [ 0 4 5 1 1 5 6 2 2 6 7<br />

3 4 8 9 5 5 9 10 6 6 10 11 7 8 12 13 9 9 13 14 10 10 14 15 11 ]<br />

[”interpolateboundary”] [0 0] [0] [0] ”P” [-60 60 0 -60 20 0 -60<br />

-20 0 -60 -60 0 -20 60 0 -20 20 45 -20 -20 45 -20 -60 0 20 60 0<br />

20 20 45 20 -20 45 20 -60 0 60 60 0 60 20 0 60 -20 0 60 -60 0]<br />

SEE ALSO<br />

RiPointsPolygons<br />

5.4 Quadrics<br />

Many common shapes can be modeled with quadrics. Although it is possible to convert<br />

quadrics to patches, they are defined as primitives because special-purpose rendering programs<br />

render them directly and because their surface parameters are not necessarily preserved<br />

if they are converted to patches. Quadric primitives are particularly useful in solid<br />

and molecular modeling applications.<br />

All the following quadrics are rotationally symmetric about the z axis (see Figure 5.3). In all<br />

the quadrics u and v are assumed to run from 0 to 1. <strong>The</strong>se primitives all define a bounded<br />

region on a quadric surface. It is not possible to define infinite quadrics. Note that each<br />

quadric is defined relative to the origin of the object coordinate system. To position them at<br />

another point or with their symmetry axis in another direction requires the use a modeling<br />

transformation. <strong>The</strong> geometric normal to the surface points “outward” from the z-axis, if<br />

the current orientation matches the orientation of the current transformation and “inward” if<br />

they don’t match. <strong>The</strong> sense of a quadric can be reversed by giving negative parameters.<br />

For example, giving a negative thetamax parameter in any of the following definitions will<br />

turn the quadric inside-out.<br />

Each quadric has a parameterlist. This is a list of token-array pairs where each token is one<br />

of the standard geometric primitive variables or a variable which has been defined with<br />

RiDeclare. For all quadrics, primitive variables of class constant and uniform must supply<br />

a single data element of the appropriate type. Primitive variables that are varying or vertex<br />

must supply 4 data values, which will be interpolated bilinearly across the quadric surface.<br />

Position variables should not be given with quadrics. All angular arguments to these functions<br />

are given in degrees. <strong>The</strong> trigonometric functions used in their definitions are assumed<br />

to also accept angles in degrees.<br />

RiSphere ( RtFloat radius, RtFloat zmin, RtFloat zmax, RtFloat thetamax, ...parameterlist...)<br />

77

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!