SYNTAX

void gleLathe (int ncp,
                gleDouble contour[][2],
                gleDouble cont_normal[][2],
                gleDouble up[3],
                gleDouble startRadius,     /* spiral starts in x-y plane */
                gleDouble drdTheta,        /* change in radius per revolution */
                gleDouble startZ,          /* starting z value */
                gleDouble dzdTheta,        /* change in Z per revolution */
                gleDouble startXform[2][3], /* starting contour affine xform */
                gleDouble dXformdTheta[2][3], /* tangent change xform per revoln */
                gleDouble startTheta,      /* start angle in x-y plane */
                gleDouble sweepTheta);     /* degrees to spiral around */

ARGUMENTS

ncp

number of contour points

contour

2D contour

cont_normal

2D contour normals

up

up vector for contour

startRadius

spiral starts in x-y plane

drdTheta

change in radius per revolution

startZ

starting z value

dzdTheta

change in Z per revolution

startXform

starting contour affine transformation

dXformdTheta

tangent change xform per revolution

startTheta

start angle in x-y plane

sweepTheta

degrees to spiral around

DESCRIPTION

Sweep an arbitrary contour along a helical path. The sweep will be performed as a shear along the z-axis, so that the orientation of the contour is displaced, rather than translated, as the contour is swept.

The axis of the helix lies along the modeling coordinate z-axis.

An affine transform can be applied as the contour is swept. For most ordinary usage, the affines should be given as NULL.

RELATED TO gleLathe…

gleSpiral

AUTHOR

Linas Vepstas ([email protected])