gleTwistExtrusion

gleTwistExtrusion(3GLE)               GLE              gleTwistExtrusion(3GLE)



NAME
       gleTwistExtrusion - Extrude arbitrary 2D contour along arbitrary 3D
       path, specifying local rotations (twists).

SYNTAX
       void gleTwistExtrusion (int ncp,
                       gleDouble contour[][2],
                       gleDouble cont_normal[][2],
                       gleDouble up[3],
                       int npoints,
                       gleDouble point_array[][3],
                       float color_array[][3],
                       gleDouble twist_array[]);

ARGUMENTS
       ncp       number of contour points

       contour   2D contour

       cont_normal
                 2D contour normals

       up        up vector for contour

       npoints   numpoints in poly-line

       point_array
                 polyline vertices

       color_array
                 colors at polyline verts

       twist_array
                 contour twists (in degrees)

DESCRIPTION
       Extrude arbitrary 2D contour along arbitrary 3D path, specifying local
       rotations (twists). As the contour is extruded, it will be twisted by
       the amount specified in the array "twist_array". The angles are
       measured in degrees, and the rotation is about the origin of the
       contour coordinate system.

       The argument "contour" specifies the 2D contour to be extruded, while
       the argument "point_array" specifies the path along which to extrude.
       The vector "up" defines the orientation of the contour y-axis in real
       3D space.

       Note that neither the very first segment, nor the very last segment are
       drawn. The first and last segments serve only to define the angle of
       the join at the very ends of the polyline. Thus, to draw one segment,
       three must be specified. To draw two segments, four must be specified,
       etc.

       The normal array may be NULL. If it is, normal vectors will NOT be
       automatically generated, and the object will look terrible when lit.

       The color array may be NULL. If NULL, the current color is used. If not
       NULL, the glColor3f() routine is used to set the color; therefore,
       specifying the glColorMaterial() subroutine before this primitive can
       be used to set diffuse, specular, ambient, etc. colors.


SEE ALSO
       gleExtrusion, gleSuperExtrusion

AUTHOR
       Linas Vepstas (linas@linas.org)



GLE                                   3.0              gleTwistExtrusion(3GLE)