GPPLD3 (pflags, pdata, plflags, plwidth, pldata, vxflags, vxwidth, vxdata) |
Purpose
Use GPPLD3 to insert a Polyline Set 3 With Data structure element into the open structure following the element pointer or to replace the element pointed at by the element pointer with a Polyline Set 3 With Data structure element depending on the current edit mode.
This structure element defines multiple three-dimensional polylines within one structure element. This is similar to the Disjoint Polyline 2 (GPDPL2) subroutine and the Disjoint Polyline 3 (GPDPL3) subroutine, except in its specification. When encountered during structure traversal, this element generates an unconnected sequence of polylines from the list of points specified.
Your application can specify optional data to further control the rendering of this primitive. The optional data consists of:
When rendering this primitive, if the primitive is not to be highlighted, then the graPHIGS API uses the specified vertex colors. If the current polyline shading method is 1=POLYLINE_SHADING_NONE (default), then the graPHIGS API uses the ith vertex color to color the ith line of the polyline. If the current polyline shading method is 2=POLYLINE_SHADING_COLOR , then the graPHIGS API interpolates the color along each line between the colors specified at the endpoints of the line. If your application does not specify the vertex color data in this primitive definition, then the graPHIGS API uses the current polyline color to render GPPLD3
You can supply vertex morphing vectors per vertex. The graPHIGS API combines these vectors with the vertices and vertex morphing scale factors (GPVMF) to create new vertex coordinate values for the rendered primitive.
See The graPHIGS Programming Interface: Understanding Concepts for a more complete explanation of how the graPHIGS API uses the various optional data values.
Note:
This note applies ONLY to applications which will be run on the High Performance 3D Color Graphics Processor (8 or 24 bit). Use of any optional data other than vertex colors may cause unpredictable results (including locking the display) on this graphics processor. If only the High Performance 3D Color Graphics Processor is used, you should include only the supported optional data values. If your application must support multiple graphics processors INCLUDING this particular processor, the Inquire Workstation Description (GPQWDT) subroutine must be used to determine the functions that each workstation supports. See also the workstation description in The graPHIGS Programming Interface: Technical Reference for the High Performance 3D Color Graphics Processor.
Polyline attributes are applied to this primitive.
GPPLD3 is identified as GDP 1014.
Note:
Not all GDPs are supported on all workstations. Use the Inquire List of Generalized Drawing Primitives (GPQGD) subroutine to determine the GDPs supported by an opened workstation. See also the workstation description in The graPHIGS Programming Interface: Technical Reference
Parameters
Number of specified polylines. This field is required.
The number of vertex morphing vectors specified at each vertex. The number of fullwords of vertex morphing vector data added to the other fullwords of vertex data specified per vertex cannot exceed 255 fullwords. This field is optional.
Number of vertices in each polyline. If the number is less than two, then no lines are generated. This field is required for each polyline.
x, y and z coordinates of each vertex. This field is required.
The three components of a color in the current color model as contained in the graPHIGS API state list. This field is optional.
The vertex morphing vectors dx1 , dy1 , dz1 , dx2 , dy2 , dz2 , ..., dxn , dyn , dzn . The number, n, of vectors in this array is specified in the pdata parameter as the vertex morphing vector count. The array must be the same length for every vertex. This field is optional.
Error Codes
Related Subroutines
RCP code
201342211 (X'0C003D03')