Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

glesetjoinstyle(3gle) [debian man page]

gleSetJoinStyle(3GLE)							GLE						     gleSetJoinStyle(3GLE)

NAME
gleSetJoinStyle, gleGetJoinStyle - Query and Set the GLE join style flags. SYNTAX
void gleSetJoinStyle (int style); int gleGetJoinStyle (void); ARGUMENTS
style bitwise OR of flags DESCRIPTION
Query and set the GLE join style flags. This word is a bitwise OR of the flags described below. The initial join style is TUBE_JN_ANGLE | TUBE_JN_CAP | TUBE_NORM_FACET. Extrusion Join Styles TUBE_JN_RAW Draw polycylinders, polycones, extrusions, etc. with no special treatment of the extrusion ends. TUBE_JN_ANGLE Draw polycylinders, polycones, extrusions, etc. by extending the different segments until they butt into each other with an angular style. TUBE_JN_CUT Draw polycylinders, polycones, extrusions, etc. by joining together the different segments and slicing off the joint at half the angle between the segments. A cap is drawn. Note that the slicing plane runs through the origin of the contour coordinate system. Thus, the amount of slice can be varied by offsetting the contour with respect to the origin. Note that when two segments meet at a shallow angle, the cut join style will potentially shave off a whole lot of the contour, lead- ing to "surprising" results... TUBE_JN_ROUND Joints will be rounded. Strictly speaking, the part of the joint above the origin will be rounded. The part below the origin will come together in an angular join. TUBE_JN_MASK Mask bits. This can be used to mask off the bit field that defines the join style. End Caps TUBE_JN_CAP If this is set, a cap will be drawn at each end of the extrusion. Automatic Normal Vector Generation TUBE_NORM_FACET A normal vector is generated per facet. Useful for having an extrusion have a "faceted" look, such as when extruding a square -- each of the four sides of the square will look flat. TUBE_NORM_EDGE Normal vectors are generated so that they lie along edges. Useful for making angular things look rounded under lighting. For exam- ple, when extruding a hexagon and using this flag, the hexagonal extrusion will look (more like a) smooth perfectly round cylinder, rather than a six-sided shape. TUBE_NORM_PATH_EDGE Normal vectors are generated so that they both lie on edges, and so that they interpolate between neighboring segments. Useful for drawing "spaghetti" -- extrusions that follow a spline path. Because the spline path must be "tessellated" into small straight seg- ments, each segment will look straight unless this flag is set. TUBE_NORM_MASK A mask useful for masking out the "norm" bits. Closed or Open Contours TUBE_CONTOUR_CLOSED If this bit is set, the contour will be treated as a "closed" contour, where the last point connects back up to the first. It is useful to set this flag when drawing closed shapes (such as extruded cylinders, star-shapes, I-Beams, etc. When drawing open extru- sions (e.g. corrugated sheet metal), you DON'T want to set this flag. BUGS
Multiple threads using GLE share a single global join style (although this should be easily fixable because GLE does use a centralized graphics context). SEE ALSO
gleExtrusion, gleTextureMode AUTHOR
Linas Vepstas (linas@linas.org) GLE
3.0 gleSetJoinStyle(3GLE)

Check Out this Related Man Page

gleSpiral(3GLE) 							GLE							   gleSpiral(3GLE)

NAME
gleSpiral - Sweep an arbitrary contour along a helical path. SYNTAX
void gleSpiral (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 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. The "startXform[][]" is an affine matrix applied to the contour to deform the contour. Thus, "startXform" of the form | cos sin 0 | | -sin cos 0 | will rotate the contour (in the plane of the contour), while | 1 0 tx | | 0 1 ty | will translate the contour, and | sx 0 0 | | 0 sy 0 | scales along the two axes of the contour. In particular, note that | 1 0 0 | | 0 1 0 | is the identity matrix. The "dXformdTheta[][]" is a differential affine matrix that is integrated while the contour is extruded. Note that this affine matrix lives in the tangent space, and so it should have the form of a generator. Thus, dx/dt's of the form | 0 r 0 | | -r 0 0 | rotate the the contour as it is extruded (r == 0 implies no rotation, r == 2*PI implies that the contour is rotated once, etc.), while | 0 0 tx | | 0 0 ty | translates the contour, and | sx 0 0 | | 0 sy 0 | scales it. In particular, note that | 0 0 0 | | 0 0 0 | is the identity matrix -- i.e. the derivatives are zero, and therefore the integral is a constant. SEE ALSO
gleLathe AUTHOR
Linas Vepstas (linas@linas.org) GLE
3.0 gleSpiral(3GLE)
Man Page