Signature
gleTwistExtrusion(
int(
ncp
)
,
gleDouble[][2](
contour
)
,
gleDouble[][2](
cont_normal
)
,
gleDouble[3](
up
)
,
int(
npoints
)
,
gleDouble[][3](
point_array
)
,
float[][3](
color_array
)
,
gleDouble[](
twist_array
)
)-> void
gleTwistExtrusion(
contour
,
cont_normal
,
up
,
point_array
,
color_array
,
twist_array
)
gleTwistExtrusion( c_int(ncp), arrays.GLdoubleArray(contour), arrays.GLdoubleArray(cont_normal), arrays.GLdoubleArray(up), c_int(npoints), arrays.GLdoubleArray(point_array), arrays.GLfloatArray(color_array), arrays.GLdoubleArray(twist_array) ) -> None
Parameters
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.
Author
Linas Vepstas