[ Previous | Next | Contents | Glossary | Home | Search ]
The graPHIGS Programming Interface: Technical Reference

Chapter 11. Structure Element Content as Returned by GPQED

The contents and organization of the structure element contents built by the graPHIGS API are provided in this chapter. The element codes that your application can use in the inclusion and exclusion lists for the Element Search (GPELS) subroutine are also shown.

When your application uses the Inquire List of Element Data (GPQED) subroutine, see Chapter 12. "Structure Element Content as Returned by GPQE".

Partial Table-of-Contents

General Format

Every structure element as returned by the Inquire List of Element Data (GPQED) inquiry subroutine has the following data format:

                    ---------------
       WORDS 1      |length | code|    Element header
                    ---------------
             2      |     data    |     Element body
                    /             /
                    |             |                  
                    ---------------

The actual element body may contain more data than is given in the specified structure elements that follow this introduction. Any data that is undocumented is used internally by the graPHIGS API. You should always use the Inquire List of Element Headers (GPQEHD) subroutine to determine the actual length of the structure element. Use the length returned from the inquiry to calculate the size of your buffer (to contain the data), and to access the position of the next structure element.

length
A halfword integer containing the length, in bytes, of the structure element. The length value includes this field and the "code" field.
code
A halfword integer uniquely identifying the structure element. The following value ranges are used:
<= 0
reserved
1-255
structure elements other than output primitives
256-511
output primitive structure elements
>= 512
reserved

Within each value range, codes for individual structure elements are chosen in an arbitrary manner. The actual code values for individual elements are shown following.

data
A sequence of parameters defining the structure element. Parameters specified by the application through the graPHIGS API may be reorganized but are stored in this field without changing their values except in the following cases:

Structure Element Codes>

The following table shows the mnemonics used for the structure element codes and their actual values. The inquiry GPQED returns the value as part of the header.

Mnemonic Dec Hex Description
GPAAL 37 0025 Set Annotation Text Alignment
GPADCN 226 00E2 Add Class Name to Set
GPAH 34 0022 Set Annotation Text Height
GPAHSC 33 0021 Set Annotation Text Height Scale Factor
GPAID 82 0052 Set Antialiasing Identifier
GPAN2 266 010A Annotation Text 2
GPAN3 265 0109 Annotation Text 3
GPANR2 270 010E Annotation Text Relative 2
GPANR3 269 010D Annotation Text Relative 3
GPAPT 36 0024 Set Annotation Text Path
GPAS 32 0020 Set Annotation Style
GPASF 53 0035 Set Attribute Source Flag
GPAUP 35 0023 Set Annotation Text Up Vector
GPBBLF 104 0068 Set Back Blending Function
GPBDFM 111 006F Set Back Data Filtering Method
GPBDMF 116 0074 Set Back Data Morphing Factors
GPBDMI 109 006D Set Back Data Mapping Index
GPBDM2 113 0071 Set Back Data Matrix 2
GPBICD 64 0040 Set Back Interior Color Direct
GPBICI 63 003F Set Back Interior Color Index
GPBISM 107 006B Set Back Interior Shading Method
GPBLF 103 0067 Set Blending Function
GPBRMO 105 0069 Set Back Reflectance Model
GPBSCD 68 0044 Set Back Specular Color Direct
GPBSCI 67 0043 Set Back Specular Color Index
GPBSPR 71 0047 Set Back Surface Properties
GPBTCO 102 0066 Set Back Transparency Coefficient
GPCAC 76 004C Set Curve Approximation Criteria
GPCEXS 254 00FE Conditional Execute Structure
GPCFA2 308 0134 Composite Fill Area 2
GPCHH 19 0013 Set Character Height
GPCHLS 39 0027 Set Character Line Scale Factor
GPCHL2 304 0130 Character Line 2
GPCHPM 22 0016 Set Character Positioning Mode
GPCHSP 17 0011 Set Character Spacing
GPCHUB 38 0026 Set Character Up and Base Vectors
GPCHUP 20 0014 Set Character Up Vector
GPCHXP 16 0010 Set Character Expansion Factor
GPCOND 243 00F3 Set Condition
GPCPI 7 0007 Set Color Processing Index
GPCRA2 274 0112 Circular Arc 2
GPCRET 240 00F0 Conditional Return
GPCR2 273 0111 Circle 2
GPDCI 6 0006 Set Depth Cue Index
GPDFM 110 006E Set Data Filtering Method
GPDMF 115 0073 Set Data Morphing Factors
GPDMI 108 006C Set Data Mapping Index
GPDM2 112 0070 Set Data Matrix 2
GPDPL2 260 0104 Disjoint Polyline 2
GPDPL3 259 0103 Disjoint Polyline 3
GPECD 44 002C Set Edge Color Direct
GPECI 29 001D Set Edge Color Index
GPEF 27 001B Set Edge Flag
GPEI 4 0004 Set Edge Index
GPELA2 283 011B Elliptical Arc 2
GPELA3 282 011A Elliptical Arc 3
GPELT 28 001C Set Edge Linetype
GPEL2 281 0119 Ellipse 2
GPEL3 280 0118 Ellipse 3
GPESC 30 001E Set Edge Scale Factor
GPEXST 250 00FA Execute Structure
GPFBC 50 0032 Set Frame Buffer Comparison
GPFBM 49 0031 Set Frame Buffer Protect Mask
GPFDMO 72 0048 Set Face Distinguish Mode
GPFLM 84 0054 Set Face Lighting Method
GPGLX2 211 00D3 Set Global Transformation 2
GPGLX3 210 00D2 Set Global Transformation 3
GPHID 74 004A Set HLHSR Identifier
GPHLCD 225 00E1 Set Highlighting Color Direct
GPHLCI 224 00E0 Set Highlighting Color Index
GPICD 43 002B Set Interior Color Direct
GPICI 26 001A Set Interior Color Index
GPII 5 0005 Set Interior Index
GPINAD 228 00E4 Insert Application Data
GPINLB 251 00FB Insert Label
GPIS 24 0018 Set Interior Style
GPISI 25 0019 Set Interior Style Index
GPISM 106 006A Set Interior Shading Method
GPLG2 296 0128 Line Grid 2
GPLG3 295 0127 Line Grid 3
GPLLCD 117 0075 Set Line-on-Line Color Direct
GPLLCI 118 0076 Set Line-on-Line Color Index
GPLMO 79 004F Set Lighting Calculation Mode
GPLSS 73 0049 Set Light Source State
GPLT 8 0008 Set Linetype
GPLWSC 9 0009 Set Linewidth Scale Factor
GPMCI 214 00D6 Set Modeling Clipping Indicator
GPMCV2 213 00D5 Set Modeling Clipping Volume 2
GPMCV3 212 00D4 Set Modeling Clipping Volume 3
GPMG2 294 0126 Marker Grid 2
GPMG3 293 0125 Marker Grid 3
GPMLX2 209 00D1 Set Modeling Transformation 2
GPMLX3 208 00D0 Set Modeling Transformation 3
GPMSSC 12 000C Set Marker Size Scale Factor
GPMT 11 000B Set Marker Type
GPNBC2 279 0117 Non Uniform B-spline Curve 2
GPNBC3 278 0116 Non Uniform B-spline Curve 3
GPNBS 305 0131 Non Uniform B-spline Surface
GPNULL 229 00E5 Null Data
GPPGC 69 0045 Set Polygon Culling
GPPGD2 300 012C Polygon 2 With Data
GPPGD3 299 012B Polygon 3 With Data
GPPG2 290 0122 Polygon 2
GPPG3 289 0121 Polygon 3
GPPHE 309 0135 Polyhedron Edge
GPPHEC 78 004E Set Polyhedron Edge Culling
GPPKID 252 00FC Set Pick Identifier
GPPLCD 40 0028 Set Polyline Color Direct
GPPLCI 10 000A Set Polyline Color Index
GPPLD3 318 013E Polyline Set 3 with Data
GPPLET 31 001F Set Polyline End Type
GPPLI 1 0001 Set Polyline Index
GPPL2 258 0102 Polyline 2
GPPL3 257 0101 Polyline 3
GPPLSM 98 0062 Set Polyline Shading Method
GPPMCD 41 0029 Set Polymarker Color Direct
GPPMCI 13 000D Set Polymarker Color Index
GPPMI 2 0002 Set Polymarker Index
GPPM2 262 0106 Polymarker 2
GPPM3 261 0105 Polymarker 3
GPPSC 81 0051 Parametric Surface Characteristic
GPPXL2 272 0110 Pixel 2
GPPXL3 271 010F Pixel 3
GPQM3 320 0140 Quadrilateral Mesh 3
GPRCN 227 00E3 Remove Class Name from Set
GPRMCV 215 00D7 Restore Modeling Clipping Volume
GPRMO 99 0063 Set Reflectance Model
GPSAC 77 004D Set Surface Approximation Criteria
GPSCD 66 0042 Set Specular Color Direct
GPSCI 65 0041 Set Specular Color Index
GPSPH 312 0138 Polysphere
GPSPR 70 0046 Set Surface Properties
GPTCAC 80 0050 Set Trimming Curve Approx. Criteria
GPTCO 101 0065 Set Transparency Coefficient
GPTEX2 242 00F2 Test Extent 2
GPTEX3 241 00F1 Test Extent 3
GPTNBS 306 0132 Trimmed Non-uniform B-spline Surface
GPTS3 301 012D Triangle Strip 3
GPTXAL 23 0017 Set Text Alignment
GPTXCD 42 002A Set Text Color Direct
GPTXCI 18 0012 Set Text Color Index
GPTXFO 14 000E Set Text Font
GPTXI 3 0003 Set Text Index
GPTXPR 15 000F Set Text Precision
GPTXPT 21 0015 Set Text Path
GPTX2 264 0108 Geometric Text 2
GPTX3 263 0107 Geometric Text 3
GPVMF 114 0072 Set Vertex Morphing Factors
GPVWI 216 00D8 Set View Index
GPWDO 246 00F6 Workstation Dependent Output
GPZBM 85 0055 Set Z-buffer Protect Mask

Common Data Types

This section provides a generic listing of possible data types for structure element parameters. The Output Primitives section refers to the data types described here in order to describe the specific data type of a particular structure element parameter.

Point 3

                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
                    |        z          | Short floating-point number
                    ---------------------

Point 2

                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------

Vector 3

                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
                    |        z          | Short floating-point number
                    ---------------------

Vector 2

                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------

Control point 3

The format of this data type depends on the rationality flag, bit 15, of the cflag/sflag parameter within the primitive.

0
NON-RATIONAL
                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
                    |        z          | Short floating-point number
                    ---------------------
1
RATIONAL
                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
                    |        z          | Short floating-point number
                    ---------------------
                    |        w          | Short floating-point number
                    ---------------------

Control point 2

The format of this data type depends on the rationality flag, bit 15, of the cflag parameter within the primitive.

0
NON-RATIONAL
                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
1
RATIONAL
                    ---------------------
                    |        x          | Short floating-point number
                    ---------------------
                    |        y          | Short floating-point number
                    ---------------------
                    |        w          | Short floating-point number
                    ---------------------

Color

The format of this data type depends on the "color type" bit in the primitive's gflag parameter.

1
DIRECT
                    ---------------------
                    |   component 1     | Short floating-point number
                    ---------------------
                    |   component 2     | Short floating-point number
                    ---------------------
                    |   component 3     | Short floating-point number
                    ---------------------
 

where 0.0 <= component n <= 1.0

Facet 3

The format of this data type depends on the bit settings in the "oflag" field in the primitive. When the bit indicated to the left of each data item is 1, the data item is present. Otherwise, the corresponding data item is not present. All data items, if they are present, must be specified in the order shown below.

                    ---------------------
           bit 7    |   facet normal    | 3 short floating-point numbers
                    ---------------------
                    ---------------------
           bit 6    |   facet color     | Color
                    ---------------------

Data_Extension

The presence of this data type depends on a bit setting of the "gflag" field in the primitive. When bit 11 of the "gflag" is 1, then additional data is present after the "oflag"screen

                    ---------------------
        WORDS 1     | Fl |Rsv1| Vl | Vdl| 4 unsigned byte integers
                    ---------------------
              2     |Rsv2|Rsv3|Vvml|Vdml| 4 unsigned byte integers
                    ---------------------
              3     |Rsv4|Rsv5|Rsv6|Rsv7| 4 unsigned byte integers
                    ---------------------
 
Fl
An unsigned byte counter that specifies the total number of words in the facet.
Rsv1
Reserved. Set to 0.
Vl
An unsigned byte counter that specifies the total number of words in the vertex.
Vdl
An unsigned byte counter that specifies the number of words of vertex data mapping data (Vdl <= Vl).
Rsv2
Reserved. Set to 0.
Rsv3
Reserved. Set to 0.
Vvml
An unsigned byte counter that specifies the number of words of vertex morphing vectors (Vvml <= Vl).
Vdml
An unsigned byte counter that specifies the number of words of data morphing vectors (Vvml <= Vl).
Rsv4, Rsv5, Rsv6, Rsv7
Reserved. Set to 0.

Vertex 3

The format of this data type depends on the bit settings of the "oflag" field in the primitive. When the bit indicated to the left of each data item is 1, the data item is present. Otherwise, the corresponding data item is not present. The data item without any corresponding bit is always present. All data items, if they are present, must be specified in the order shown below.

                    ---------------------
                    |    coordinate     | Point 3
                    ---------------------
                    ---------------------
          bit 15    |   vertex normal   | Vector 3
                    ---------------------
                    ---------------------
          bit 14    |   vertex color    | Color
                    ---------------------
                    ---------------------
          bit 13    |   opt_data flag   | Fullword integer
                    ---------------------
                    ---------------------
          bit 12    |    tran_coeff     | Floating-point number
                    ---------------------
                    ---------------------
          bit 11    |  vertex morphing  |    'Vvml x'
                    /    3d vectors     / Floating-point number
                    ---------------------
                    ---------------------
          bit 10    |   data mapping    |    'Vdl x'
                    /      data         / Floating-point number
                    ---------------------
                    ---------------------
          bit 9     |   data morphing   |    'Vdml x'
                    /      vectors      / Floating-point number
                    ---------------------

Vertex 2

The format of this data type depends on bit setting of the "oflag" field in the primitive. When the bit indicated in the left of each data item is 1, the data item is present. Otherwise, the corresponding data item is not present. The data item without any corresponding bit is always present. All data items, if they are present, must be specified in the order shown below.

                    ---------------------
                    |    coordinate     | Point 2
                    ---------------------
                    ---------------------
           bit 14   |    vertex color   | Color
                    ---------------------
                    ---------------------
           bit 13   |   opt_data flag   | Fullword integer
                    ---------------------
                    ---------------------
           bit 12   |    tran_coeff     | Floating-point number
                    ---------------------
                    ---------------------
           bit 11   |  vertex morhping  |     'Vvml x'
                    /   2d vectors      / Floating-point number
                    ---------------------
                    ---------------------
           bit 10   |   data mapping    |     'Vdl x'
                    /      data         / Floating-point number
                    ---------------------
                    ---------------------
           bit 9    |  data morphing    |     'Vdml x'
                    /     vectors       / Floating-point number
                    ---------------------

Notes:

  1. The format of the "vertex color" field is determined by the "color type" bit of the gflag parameter.
  2. The "opt_data flag" is a 32-bit integer which specifies additional information for this vertex depending on the area primitive defined.
    bit 0-29
    reserved
    bit 30
    Edge indicator: 0 = NOT_AN_EDGE, 1 = IS_AN_EDGE
    bit 31
    Edge indicator: 0 = NOT_AN_EDGE, 1 = IS_AN_EDGE

    When the value of bit 30 or bit 31 is 1, a line starting from this vertex is treated as a geometric edge. Bit 30 is used by area primitives that require only one edge indicator flag per vertex. Quadrilateral Mesh 3 and Triangle Strip 3 are the only area primitives that require two edge indicators per vertex. Therefore, for the Quadrilateral Mesh 3 primitive, bit 30 is the edge indicator from specified vertex "V" ( i, j ) to vertex "V" ( i + 1, j ), and bit 31 is the edge indicator from specified vertex "V" (sub i,j) to vertex "V" ( i, j +1 ). For the Triangle Strip 3 primitive, bit 30 is the edge indicator from specified vertex "V" ( i ) to vertex "V" ( i +1 ), and bit 31 is the edge indicator from specified vertex "V" ( i ) to vertex "V" ( i +2 )

    Edge indicators are used only when the current global edge flag is set to ON or GEOMETRY_ONLY

Output Primitives

Line Primitives

Polyline 3 (GPPL3)

This structure element defines a series of three-dimensional points that are to be connected by straight lines. The width parameter is discarded when creating the structure element.

                    ---------------------
        WORDS 1     | length | X'0101'  | Element header
                    ---------------------
              2     |                   | Array of short
                    /  X,Y,Z,X,Y,Z,X... / floating-point numbers
                    /                   /
                    ---------------------

Polyline 2 (GPPL2)

This structure element defines a series of two-dimensional points that are to be connected by straight lines. The width parameter is discarded when creating the structure element.

                    ---------------------
        WORDS 1     | length | X'0102'  | Element header
                    ---------------------
              2     |                   | Array of short
                    /   X,Y,X,Y,X ...   / floating-point numbers
                    /                   /
                    ---------------------

Polyline Set 3 with Data (GPPLD3)

This structure element defines multiple three-dimensional polylines. The plwidth, vxwidth, and pldata parameters are discarded when creating the structure element. The API's vxdata parameter is used to build the "seglist" field and is then discarded. Bits in the API's pflags, plflags, and vxflags parameters are used to build the oflag field and are then discarded.

                    ----------------------
        WORDS 1     | length | X'013E'   | Element header
                    ----------------------
              2     | gflag  | oflag     | 2 halfword integers
                    ----------------------
              3-5   |  data_extension*   | Data_extension
                    ----------------------
                    |     seglist        | n x Segment
                    /                    /
                    /                    /
                    ----------------------
 
 
      Segment format
 
                    ---------------------
                    |      length       | Fullword integer
                    ---------------------
                    |      vlist        | m x Vertex 3
                    /                   /
                    /                   /
                    ---------------------
 

* The data_extension field is present only if bit 11 of the gflag is 1.

Disjoint Polyline 3 (GPDPL3)

This structure element defines a series of three-dimensional points that are to be connected by straight lines in three-dimensional modeling space. The API's npoint, width, pointlist and mdarray parameters are used to build the "seglist" field and are then discarded.

                    ---------------------
        WORDS 1     | length | X'0103'  | Element header
                    ---------------------
              2     |                   | n x Segment
                    /      seglist      /
                    /                   /
                    ---------------------
 
      Segment format
                    ---------------------
                    |      length       | Fullword integer
                    ---------------------
                    |                   | Array of short
                    /  X,Y,Z,X,Y,Z,X... / floating-point numbers
                    /                   /
                    ---------------------

Disjoint Polyline 2 (GPDPL2)

This structure element defines a series of two-dimensional points that are to be connected by straight lines. The API's npoint, width, pointlist and mdarray parameters are used to build the "seglist" field and are then discarded.

                    ---------------------
        WORDS 1     | length |  X'0104' | Element header
                    ---------------------
              2     |      seglist      | n x segment
                    /                   /
                    /                   /
                    ---------------------
 
      Segment format
                    ---------------------
                    |      length       | Fullword integer
                    ---------------------
                    |                   | Array of short
                    /  X,Y,X,Y,X,Y,X... / floating-point numbers
                    /                   /
                    ---------------------

Circle 2 (GPCR2)

This structure element defines a circle in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0111'  | Element header
                    ---------------------
              2-3   |      center       | 2 short floating-point numbers
                    ---------------------
              4     |      radius       | Short floating-point number
                    ---------------------

Circular Arc 2 (GPCRA2)

This structure element defines a circular arc in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0112'  | Element header
                    ---------------------
              2-3   |      center       | 2 short floating-point numbers
                    ---------------------
              4     |      radius       | Short floating-point number
                    ---------------------
              5     |      startang     | Short floating-point number
                    ---------------------
              6     |      endang       | Short floating-point number
                    ---------------------

Ellipse 3 (GPEL3)

This structure element defines an ellipse in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0118'  | Element header
                    ---------------------
              2-4   |      center       | 3 short floating-point numbers
                    ---------------------
              5-7   |       refv1       | 3 short floating-point numbers
                    ---------------------
              8-10  |       refv2       | 3 short floating-point numbers
                    ---------------------

Ellipse 2 (GPEL2)

This structure element defines an ellipse in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0119'  | Element header
                    ---------------------
              2-3   |      center       | 2 short floating-point numbers
                    ---------------------
              4-5   |       refv1       | 2 short floating-point numbers
                    ---------------------
              6-7   |       refv2       | 2 short floating-point numbers
                    ---------------------

Elliptical Arc 3 (GPELA3)

This structure element defines an elliptical arc in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'011A'  | Element header
                    ---------------------
              2-4   |      center       | 3 short floating-point numbers
                    ---------------------
              5-7   |       refv1       | 3 short floating-point numbers
                    ---------------------
              8-10  |       refv2       | 3 short floating-point numbers
                    ---------------------
              11    |       startv      | Short floating-point number
                    ---------------------
              12    |        endv       | Short floating-point number
                    ---------------------

Elliptical Arc 2 (GPELA2)

This structure element defines an elliptical arc in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'011B'  | Element header
                    ---------------------
              2-3   |      center       | 2 short floating-point numbers
                    ---------------------
              4-5   |       refv1       | 2 short floating-point numbers
                    ---------------------
              6-7   |       refv2       | 2 short floating-point numbers
                    ---------------------
              8     |       startv      | Short floating-point number
                    ---------------------
              9     |        endv       | Short floating-point number
                    ---------------------

Line Grid 3 (GPLG3)

This structure element defines a grid of lines in the plane defined by point, refv1, and refv2 in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0127'  | Element header
                    ---------------------
              2-4   |      point        | 3 short floating-point numbers
                    ---------------------
              3-7   |      refv1        | 3 short floating-point numbers
                    ---------------------
              8-10  |      refv2        | 3 short floating-point numbers
                    ---------------------
              11    |      imin         | Fullword integer
                    ---------------------
              12    |      imax         | Fullword integer
                    ---------------------
              13    |      jmin         | Fullword integer
                    ---------------------
              14    |      jmax         | Fullword integer
                    ---------------------

Line Grid 2 (GPLG2)

This structure element defines a grid of lines in the plane defined by point, refv1, and refv2 in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0128'  | Element header
                    ---------------------
              2-3   |      point        | 2 short floating-point numbers
                    ---------------------
              4-5   |      refv1        | 2 short floating-point numbers
                    ---------------------
              6-7   |      refv2        | 2 short floating-point numbers
                    ---------------------
              8     |      imin         | Fullword integer
                    ---------------------
              9     |      imax         | Fullword integer
                    ---------------------
              10    |      jmin         | Fullword integer
                    ---------------------
              11    |      jmax         | Fullword integer
                    ---------------------

Non-uniform B-Spline Curve 3 (GPNBC3)

This structure element defines a non-uniform B-spline curve of the specified order using the specified coefficients in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0116'  | Element header
                    ---------------------
              2     | cflag  |  tflag   | 2 halfword integers
                    ---------------------
              3     |      order        | Fullword integer
                    ---------------------
              4     |      npoint       | Fullword integer
                    ---------------------
              5     |      tmin         | Short floating-point number
                    ---------------------
              6     |      tmax         | Short floating-point number
                    ---------------------
              7     |      iknot        | 'order' x Iknot
                    /                   /
                    /                   /
                    ---------------------
                    |      ipoint       | ('order'-1) x Ipoint
                    /                   /
                    /                   /
                    ---------------------
                    |      spanlist     | ('npoint'-'order'+1) x span
                    /                   /
                    /                   /
                    ---------------------
 
      Iknot format
                    ---------------------
                    |      knot         | Array of short floating-point numbers
                    ---------------------
 
      Ipoint format
                    ---------------------
                    |      cpoint       | Control point 3
                    ---------------------
                    |      knot         | Array of short floating-point numbers
                    ---------------------
 
      Span format
                    ---------------------
                    |      cpoint       | Control point 3
                    ---------------------

Non-uniform B-Spline Curve 2 (GPNBC2)

This structure element defines a non-uniform B-spline curve of the specified order using the specified coefficients in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0117'  | Element header
                    ---------------------
              2     | cflag  |  tflag   | 2 halfword integers
                    ---------------------
              3     |      order        | Fullword integer
                    ---------------------
              4     |      npoint       | Fullword integer
                    ---------------------
              5     |      tmin         | Short floating-point number
                    ---------------------
              6     |      tmax         | Short floating-point number
                    ---------------------
              7     |      iknot        | 'order' x iknot
                    /                   /
                    /                   /
                    ---------------------
                    |      ipoint       | ('order'-1) x ipoint
                    /                   /
                    /                   /
                    ---------------------
                    |      spanlist     | ('npoint'-'order'+1) x span
                    /                   /
                    /                   /
                    ---------------------
 
      Iknot format
                    ---------------------
                    |      knot         | Array of short floating-point numbers
                    ---------------------
 
      Ipoint format
                    ---------------------
                    |      cpoint       | Control point 2
                    ---------------------
                    |      knot         | Array of short floating-point numbers
                    ---------------------
 
      Span format
                    ---------------------
                    |      cpoint       | Control point 2
                    ---------------------

The relation between the API parameters and fields in this structure element is shown by the following picture.

           Control points Tessellation   Knot values
 
                                        -----------
                                        |         |
   'order'                              |         |  -->'iknot'
                                        |         |
                                        |         |
            -----------                 |---------|
            |         |                 |         |
  'order'1  |         |                 |         |  -->'ipoint'
            |         |                 |         |
            |---------|   -----------   |---------|
            |         |   |         |   |         |
   'number' |         |   |         |   |         |
            |         |   |         |   |         |
 'order'+1  |         |   |         |   |         |  -->'span'
            |         |   |         |   |         |
            |         |   |         |   |         |
            -----------   -----------   -----------

Polyhedron Edge (GPPHE)

This structure element simulates the edge of a polyhedron type object.

                    ---------------------
     WORDS 1        | length | X'0135'  | Element header
                    ---------------------
           2        |      edgelist     | 'nedge' x edge
                    /                   /
                    /                   /
                    ---------------------
 
      Edge format
                    ---------------------
                    |      normal#1     | 3 short floating-point numbers
                    ---------------------
                    |      normal#2     | 3 short floating-point numbers
                    ---------------------
                    |      vertex#1     | 3 short floating-point numbers
                    ---------------------
                    |      vertex#2     | 3 short floating-point numbers
                    ---------------------

Note: The API's nedge parameter is discarded after being used to build the "edgelist" field.

Marker Primitives

Polymarker 3 (GPPM3)

This structure element defines a series of points that are to be identified with markers in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0105'  | Element header
                    ---------------------
              2     |     pointlist     | 'npoint' x Point 3
                    /                   /
                    /                   /
                    ---------------------

Note: The API's npoint, width and pointlist parameters are used to build the "plist" field and are then discarded.

Polymarker 2 (GPPM2)

This structure element defines a series of points that are to be identified with markers in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0106'  | Element header
                    ---------------------
              2     |     pointlist     | 'npoint' x Point 2
                    /                   /
                    /                   /
                    ---------------------

Note: The API's npoint, width and pointlist parameters are used to build the "plist" field and are then discarded.

Marker Grid 3 (GPMG3)

This structure element defines a grid of markers in the plane defined by point, refv1, and refv2 in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0125'  | Element header
                    ---------------------
              2-4   |      point        | 3 short floating-point numbers
                    ---------------------
              3-7   |      refv1        | 3 short floating-point numbers
                    ---------------------
              8-10  |      refv2        | 3 short floating-point numbers
                    ---------------------
              11    |      imin         | Fullword integer
                    ---------------------
              12    |      imax         | Fullword integer
                    ---------------------
              13    |      jmin         | Fullword integer
                    ---------------------
              14    |      jmax         | Fullword integer
                    ---------------------

Marker Grid 2 (GPMG2)

This structure element defines a grid of markers in the plane defined by point, refv1, and refv2 in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0126'  | Element header
                    ---------------------
              2-3   |      point        | 2 short floating-point numbers
                    ---------------------
              4-5   |      refv1        | 2 short floating-point numbers
                    ---------------------
              6-7   |      refv2        | 2 short floating-point numbers
                    ---------------------
              8     |      imin         | Fullword integer
                    ---------------------
              9     |      imax         | Fullword integer
                    ---------------------
              10    |      jmin         | Fullword integer
                    ---------------------
              11    |      jmax         | Fullword integer
                    ---------------------

Annotation Text Primitives

Annotation Text 3 (GPAN3)

This structure element defines an annotation text string in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0109'  | Element header
                    ---------------------
              2-4   |      point        | 3 short floating-point numbers
                    ---------------------
              5     |      length       | Fullword integer
                    ---------------------
              6     |  rsvd  |   csid   | 2 halfword integers
                    ---------------------
              7     |      text         | Variable-length character string
                    /                   /
                    /                   /
                    ---------------------

Annotation Text 2 (GPAN2)

(Ref #91.) This structure element defines an annotation text string in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'010A'  | Element header
                    ---------------------
              2-3   |      point        | 2 short floating-point numbers
                    ---------------------
              4     |      length       | Fullword integer
                    ---------------------
              5     |  rsvd  |   csid   | 2 halfword integers
                    ---------------------
              6     |      text         | Variable-length character string
                    /                   /
                    /                   /
                    ---------------------

Annotation Text Relative 3 (GPANR3)

This structure element defines an annotation text string in three-dimensional normalized projection coordinates and annotates a specified reference point according to the annotation style in the traversal state list.

                    ---------------------
     WORDS 1        |  length | x'010D' |   Element header
                    ---------------------
           2-4      |      refpoint     |   Point 3
                    ---------------------
           5-7      |      offset       |   Point 3
                    ---------------------
           8        |      length       |   Fullword integer
                    ---------------------
           9        |   rsvrd |  bcsid  |   2 halfword integers
                    ---------------------
           10       |       text        |   Fullword integer
                    /                   /
                    |                   |
                    ---------------------
 

Annotation Text Relative 2 (GPANR2)

This structure element defines an annotation text string in two-dimensional normalized projection coordinates and annotates a specified reference point according to the annotation style in the traversal state list.

                    ---------------------
     WORDS 1        | length | x'010E'  |  Element header
                    ---------------------
           2-4      |     refpoint      |  Point 2
                    ---------------------
           5-7      |     offset        |  Point 2
                    ---------------------
           8        |     length        |  Fullword integer
                    ---------------------
           9        |  rsvrd |  bcsid   |  2 halfword integers
                    ---------------------
           10       |      text         |  Fullword integer
                    /                   /
                    /                   /
                    ---------------------
 

Geometric Text Primitives

Geometric Text 3 (GPTX3)

This structure element defines a geometric text string in three-dimensional modeling space.

                  ---------------------
      WORDS 1     | length | X'0107'  | Element header
                  ---------------------
            2-4   |      point        | 3 short floating-point numbers
                  ---------------------
            5-7   |      refvx        | 3 short floating-point numbers
                  ---------------------
            8-10  |      refvd        | 3 short floating-point numbers
                  ---------------------
            11-13 |      refvy        | 3 short floating-point numbers
                  ---------------------
            14    |      length       | Fullword integers
                  ---------------------
            15    |  rsvd  |  csid    | 2 halfword integers
                  ---------------------
            16    |       text        | Variable-length character string
                  /                   /
                  /                   /
                  ---------------------

Geometric Text 2 (GPTX2)

This structure element defines a geometric text string in two-dimensional modeling space.

                  ---------------------
      WORDS 1     | length | X'0108'  | Element header
                  ---------------------
            2-3   |      point        | 2 short floating-point numbers
                  ---------------------
            4     |      length       | Fullword integer
                  ---------------------
            5     |  rsvd  |  csid    | 2 halfword integers
                  ---------------------
            6     |      text         | Variable-length character string
                  /                   /
                  /                   /
                  ---------------------
 

Character Line 2 (GPCHL2)

This structure element is used to define an integral number of a specific character along a line between two specified points.

                    ---------------------
        WORDS 1     | length | X'0130'  | Element header
                    ---------------------
              2-3   |      startp       | 2 short floating-point numbers
                    ---------------------
              4-5   |      endp         | 2 short floating-point numbers
                    ---------------------
              6-7   |      refvx        | 2 short floating-point numbers
                    ---------------------
              8-9   |      refvy        | 2 short floating-point numbers
                    ---------------------
              10    |      distance     | Short floating-point number
                    ---------------------
              11    |      nomhgt       | Short floating-point number
                    ---------------------
              12    | X'0000' | csid    | 2 halfword integers
                    ---------------------
              13    |char|      pad     | Character code
                    ---------------------

Note: Character code is left-adjusted in the "char" field and the element is padded to a word boundary.

Area Primitives

Polygon 3 (GPPG3)

This structure element defines a polygon in three-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0121'  | Element header
                    ---------------------
              2     |  gflag | reserved | 2 halfword integers
                    ---------------------
              3     |     contlist      | 'areas' x contour
                    /                   /
                    /                   /
                    ---------------------
 
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      plist        | m x Point 3
                    /                   /
                    /                   /
                    ---------------------

Note: The pointlist parameter is reorganized into the contlistscreen The areas, width and npoint parameter are discarded after being used.

Polygon 2 (GPPG2)

This structure element defines a polygon in two-dimensional modeling space.

                    ---------------------
        WORDS 1     | length | X'0122'  | Element header
                    ---------------------
              2     |  gflag | reserved | 2 halfword integers
                    ---------------------
              3     |     contlist      | 'areas' x contour
                    /                   /
                    /                   /
                    ---------------------
 
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      plist        | m x Point 2
                    /                   /
                    /                   /
                    ---------------------

Note: The pointlist parameter is reorganized into the contlistscreen The areas, width and npoint parameter are discarded after being used.

Polygon 3 With Data (GPPGD3)

This structure element defines a polygon with the specified number of subareas in three-dimensional modeling space.

                    ----------------------
        WORDS 1     | length | X'012B'   | Element header
                    ----------------------
              2     | gflag  |  oflag    | 2 halfword integers
                    ----------------------
              3-5   |  data_extension*   | Data_extension
                    ----------------------
                    |      facet         | Facet 3
                    |                    |
                    ----------------------
                    |     contlist       | 'Number of subareas'
                    /                    /
                    /                    /
                    ----------------------
 
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      vlist        | m x Vertex 3
                    /                   /
                    /                   /
                    ---------------------

* The data_extension field is present only if bit 11 of the gflag is 1.

Polygon 2 With Data (GPPGD2)

This structure element defines a polygon with the specified number of subareas in two-dimensional modeling space.

                    ----------------------
        WORDS 1     | length | X'012C'   | Element header
                    ----------------------
              2     | gflag  | oflag     | 2 halfword integers
                    ----------------------
              3-5   |  data_extension*   | Data_extension
                    ----------------------
                    |      facet         | Facet 2
                    |                    |
                    ----------------------
                    |     contlist       | 'Number of subareas'
                    /                    /
                    /                    /
                    ----------------------
 
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      vlist        | m x Vertex 2
                    /                   /
                    /                   /
                    ---------------------

* The data_extension field is present only if bit 11 of the gflag is 1.

Triangle Strip 3 (GPTS3)

This structure element defines (n-2) triangles from n vertexes in three-dimensional modeling space.

                    ----------------------
        WORDS 1     | length | X'012D'   | Element header
                    ----------------------
              2     | gflag  |  oflag    | 2 halfword integers
                    ----------------------
              3-5   |  data_extension*   | Data_extension
                    ----------------------
                    |     vertex#1       | Vertex 3
                    |                    |
                    ----------------------
                    |     vertex#2       | Vertex 3
                    |                    |
                    ----------------------
                    |       body         | 'Number of point - 2'
                    /                    /         x
                    /                    /      triangle
                    ----------------------
 
      Triangle format
                    ---------------------
                    |      facet        | Facet 3
                    ---------------------
                    |      vertex       | Vertex 3
                    ---------------------

* The data_extension field is present only if bit 11 of the gflag is 1.

Quadrilateral Mesh 3 (GPQM3)

This structure element defines (m-1 [default] n-1) quadrilaterals from a two-dimensional array of m [default] n vertices in three-dimensional modeling space.

                    ----------------------
        WORDS 1     | length | X'0140'   | Element header
                    ----------------------
              2     | gflag  |  oflag    | 2 halfword integers
                    ----------------------
              3-5   |  data_extension*   | Data_extension
                    ----------------------
                    |     row_dim        | Fullword integer
                    ----------------------
                    |     col_dim        | Fullword integer
                    ----------------------
                    |      vlist         | row_dim x Vertex 3
                    /                    /
                    /                    /
                    ----------------------
                    |    quad_rows       | (col_dim-1) x Quad_row
                    /                    /
                    /                    /
                    ----------------------
 
      Quad_row format
                    ----------------------
                    |      vertex       | Vertex 3
                    ----------------------
                    |      quads        | (row_dim-1) x Quad
                    /                   /
                    ----------------------
 
      Quad format
                    ----------------------
                    |      facet        | Facet 3
                    ----------------------
                    |      vertex       | Vertex 3
                    ----------------------
 

* The data_extension field is present only if bit 11 of the gflag is 1.

Non-Uniform B-Spline Surface (GPNBS)

This structure element defines a Non-Uniform B-Spline Surface of the specified u and v orders using the specified control points and knots.

                    ---------------------
        WORDS 1     | length | X'0131'  | Element header
                    ---------------------
              2     | sfflag |  stflag  | 2 halfword integers
                    ---------------------
              3     |     u-order       | Fullword integer
                    ---------------------
              4     |     unumber       | Fullword integer
                    ---------------------
              5     |     vorder        | Fullword integer
                    ---------------------
              6     |     vnumber       | Fullword integer
                    ---------------------
              7     |     umin          | Short floating-point number
                    ---------------------
              8     |     umax          | Short floating-point number
                    ---------------------
              9     |     vmin          | Short floating-point number
                    ---------------------
              10    |     vmax          | Short floating-point number
                    ---------------------
              11    |     uknots        | 'u-number' + 'u-order'
                    /                   /            x
                    /                   / short floating-point number
                    ---------------------
                    |     utess         | 'u-number' - 'u-order'+1
                    /                   /            x
                    |                   | short floating-point number
                    ---------------------
                    |     vknots        | 'v-number' + 'v-order'
                    /                   /            x
                    |                   | short floating-point number
                    ---------------------
                    |     vtess         | 'v-number' - 'v-order'+1
                    /                   /            x
                    |                   | short floating-point number
                    ---------------------
                    |     clist         | 'u-number' x 'v-number'
                    /                   /            x
                    |                   | Control point 3
                    ---------------------

Composite Fill Area 2 (GPCFA2)

This structure element defines the planar area geometry defined by the specified contours using polygon attributes.

                    ---------------------
        WORDS 1     | length | X'0134'  | Element header
                    ---------------------
              2     |  gflag | reserved | 2 halfword integers
                    ---------------------
              3     |     contlist      | 'ncontour' x contour
                    /                   /
                    /                   /
                    ---------------------
 
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      seglist      | 'ncurve' x segment
                    /                   /
                    /                   /
                    ---------------------
 
      Segment format
                    ---------------------
                    |      seglen       | Fullword integer
                    ---------------------
                    | sgflag |  sgtype  | 2 halfword integers
                    ---------------------
                    |      segdef       | Variable data
                    /                   /
                    /                   /
                    ---------------------

Trimmed Non-uniform B-Spline Surface (GPTNBS)

This structure element defines a trimmed non-uniform B-spline surface of the specified u and v orders using the specified control points and knots.

                    ---------------------
        WORDS 1     | length | X'0132'  | Element header
                    ---------------------
              2     | sflag  |  stflag  | 2 halfword integers
                    ---------------------
              3     |     uorder        | Fullword integer
                    ---------------------
              4     |     unumber       | Fullword integer
                    ---------------------
              5     |     vorder        | Fullword integer
                    ---------------------
              6     |     vnumber       | Fullword integer
                    ---------------------
              7     |     reserved1     | Fullword integer
                    ---------------------
              8     |     reserved2     | Fullword integer
                    ---------------------
              9     |     trimming      | Variable-length field
                    /                   /
                    ---------------------
                    |     uknots        | 'u-number' + 'u-order'
                    /                   /            x
                    /                   / short floating-point number
                    ---------------------
                    |     utess         | 'u-number' - 'u-order'+1
                    /                   /            x
                    /                   / short floating-point number
                    ---------------------
                    |     vknots        | 'v-number' + 'v-order'
                    /                   /            x
                    /                   / short floating-point number
                    ---------------------
                    |     vtess         | 'v-number' - 'v-order'+1
                    /                   /            x
                    /                   / short floating-point number
                    ---------------------
                    |     clist         | 'u-number' x 'v-number'
                    /                   /          x
                    /                   / Control point 3
                    ---------------------
      Trimming format
                    ---------------------
                    |      trimlen      | Fullword integer
                    ---------------------
                    |      contlist     | 'ncontour' x contour
                    /                   /
                    /                   /
                    ---------------------
      Contour format
                    ---------------------
                    |      contlen      | Fullword integer
                    ---------------------
                    |      seglist      | 'ncurve' x segment
                    /                   /
                    /                   /
                    ---------------------
      Segment format
                    ---------------------
                    |      seglen       | Fullword integer
                    ---------------------
                    | sgflag |  sgtype  | 2 halfword integers
                    ---------------------
                    |      segdef       | Variable data
                    /                   /
                    /                   /
                    ---------------------

Polysphere (GPSPH)

This structure element defines a sphere or a sequence of spheres in modeling space.

                    ---------------------
        WORDS 1     | length | X'0138'  | Element header
                    ---------------------
              2     |    reserved       | Fullword integer
                    ---------------------
              3     |    spherelist     |
                    /                   /
                    /                   /
                    ---------------------
       Spherelist format
                    ---------------------
                    |       point       | 3 short floating-point numbers
                    ---------------------
                    |       radius      | Short floating-point number
                    ---------------------

Pixel Primitives

Pixel 3 (GPPXL3)

This structure element defines a three-dimensional rectangular array of pixels in modeling space.

                    ---------------------
        WORDS 1     | length | X'010F'  | Element header
                    ---------------------
              2-4   |      point        | 3 short floating-point numbers
                    ---------------------
              5     |      nrows        | Fullword integer
                    ---------------------
              6     |      ncols        | Fullword integer
                    ---------------------
              7     |      pixels       | 'nrows' x 'ncols'
                    /                   / one-byte unsigned integers
                    /                   /
                    ---------------------

Pixel 2 (GPPXL2)

This structure element defines a two-dimensional rectangular array of pixels in modeling space.

                    ---------------------
        WORDS 1     | length | X'0110'  | Element header
                    ---------------------
              2-4   |      point        | 2 short floating-point numbers
                    ---------------------
              5     |      nrows        | Fullword integer
                    ---------------------
              6     |      ncols        | Fullword integer
                    ---------------------
              7     |      pixels       | 'nrows' x 'ncols'
                    /                   / one-byte unsigned integers
                    /                   /
                    ---------------------

Attribute Setting Structure Elements

General Attributes

Set HLHSR Identifier (GPHID)

This structure element specifies how each geometric entity should be processed in the hidden line, hidden surface removal process.

                    ---------------------
     WORDS 1        | length | X'004A'  | Element header
                    ---------------------
           2        |      HLHSRid      | Fullword integer
                    ---------------------

Set Antialiasing Identifier (GPAID)

This structure element sets whether antialiasing is performed for consecutive primitives within a view depending on the antialiasing mode setting for the view.

                 --------------------------
        WORDS  1 |  length   |   X'0052'  |    Element header
                 --------------------------
               2 |         antid          |    Fullword integer
                 --------------------------
 

Set Z-buffer Protect Mask (GPZBM)

This structure element defines a mask used to enable or disable updates of the Z-buffer.

                    ---------------------
     WORDS 1        | length | X'0055'  | Element header
                    ---------------------
           2        |       mask        | Fullword integer
                    ---------------------

Set Face Lighting Method (GPFLM)

This structure element sets the current face lighting method. Subsequent lighting calculations are effected by this setting.

                   ----------------------
     WORDS 1       |  length | X'0054'  | Element header
                   ----------------------
           2       |face lighting method| Fullword integer
                   ----------------------

Set Depth Cue Index (GPDCI)

This structure element supplies depth cue information to the workstation. The attributes defined in the entry control the depth cueing applied to subsequent primitives.

                    ---------------------
     WORDS 1        | length | X'0006'  | Element header
                    ---------------------
           2        |       index       | Fullword integer
                    ---------------------

Set Color Processing Index (GPCPI)

This structure element sets an index into the color processing table on the workstation. The values in the entry are used when creating output primitives.

                    ---------------------
     WORDS 1        | length | X'0007'  | Element header
                    ---------------------
           2        |       index       | Fullword integer
                    ---------------------

Set Highlighting Color Index (GPHLCI)

This structure element sets the index into the workstation-dependent color table, which is used for highlighted primitives.

                 --------------------------
        WORDS 1  |    length  | X'00E0'   | Element header
                 --------------------------
              2  |highlighting color index| Fullword integer
                 --------------------------

Set Highlighting Color Direct (GPHLCD)

This structure element sets the direct color values to be used to render subsequent highlighted primitives.

                    ---------------------
        WORDS 1     | length | X'00E1'  | Element header
                    ---------------------
              2-4   |highlighting color | 3 short floating-point numbers
                    |                   |
                    ---------------------

Add Class Name to Set (GPADCN)

This structure element allows an application to define the eligibility of a primitive for pickability (detectability), highlighting, and invisibility by associating it with a set of class names. During structure traversal, the specified class names are added to the current class set.

                    ---------------------
        WORDS 1     | length | X'00E2'  | Element header
                    ---------------------
              2     |   class name 1    | n x fullword integers
                    ---------------------
                    |                   |
                    /                   /
                    /                   /
                    ---------------------
                    |   class name n    |
                    ---------------------

Remove Class Name from Set (GPRCN)

This structure element allows an application to define the eligibility of a primitive for pickability (detectability), highlighting, and invisibility by associating it with a set of class names. During structure traversal, the specified class names are removed from the current class set.

                    ---------------------
        WORDS 1     | length | X'00E3'  | Element header
                    ---------------------
              2     |   class name 1    | n x fullword integers
                    ---------------------
                    |                   |
                    /                   /
                    /                   /
                    ---------------------
                    |   class name n    |
                    ---------------------

Set Vertex Morphing Factors (GPVMF)

This structure element specifies vertex morphing factors which affect morphing of subsequent primitives supplied with vertex morphing vectors.

 
                    ---------------------
      WORDS 1       | length | X '0072' | Procedure header
                    ---------------------
            2       |     flength       | Fullword integer
                    ---------------------
            3       |      fdata        |    flength x
                    /                   / Short floating-point number
                    ---------------------

Set Transparency Coefficient (GPTCO)

This structure element specifies the source transparency coefficient used to blend subsequent primitives with previously rendered output.

                    ---------------------
        WORDS 1     | length | X'0065'  | Procedure header
                    ---------------------
              2     |      coeff        | Short floating-point number
                    ---------------------
 

Set Blending Function (GPBLF)

This structure element specifies the source blending function and the destination blending function used to blend subsequent primitives with previously rendered output.

                    --------------------
        WORDS 1     | length | X'0067' |  Procedure header
                    --------------------
              2     |      srcf        |  Fullword integer
                    --------------------
              3     |     destf        |  Fullword integer
                    --------------------

Set Line-on-Line Color Direct (GPLLCD)

This structure element specifies the direct color values to be used when highlighting using the Frame Buffer Comparison option WRITE_WHEN_NOT_EQUAL screen

                    ---------------------
        WORDS 1     | length | X'0075'  | Element header
                    ---------------------
              2     |   components      | 3 floating point numbers
                    ---------------------
 

Set Line-on-Line Color Index (GPLLCI)

This structure element specifies an entry in the workstation's rendering color table that contains the color to be used when highlighting using the Frame Buffer Comparison option WRITE_WHEN_NOT_EQUAL screen

                    ---------------------
        WORDS 1     | length | X'0076'  | Element header
                    ---------------------
              2     |      index        | Fullword integer
                    ---------------------
 

Attribute Selection

Set Attribute Source Flag (GPASF)

This structure element defines whether a particular attribute used for rendering a primitive should be from the BUNDLED or CURRENT_INDIVIDUAL attribute setting.

                    ---------------------
        WORDS 1     | length | X'0035'  | Element header
                    ---------------------
              2     |     asflist       | n x ASFspec
                    /                   /
                    /                   /
                    ---------------------
 
      ASFspec format
     --------------------------------------
     |attribute identifier |  ASF value   |  2 halfword integers
     --------------------------------------

Polyline Attributes

Set Curve Approximation Criteria (GPCAC)

This structure element determines how curves are to be tessellated for subsequent curve primitives during structure traversal.

                    ---------------------
        WORDS 1     | length | X'004C'  |  Element header
                    ---------------------
              2     |      criteria     |  Fullword integer
                    ---------------------
              3     |      cvalue       |  Short floating-point number
                    ---------------------

Set Trimming Curve Approximation Criteria (GPTCAC)

This structure element enables the application to control the tessellation of the trimming curve as well as the surface in the area of the curve when rendering subsequent trimming surface primitives.

                    ---------------------
        WORDS 1     | length | X'0050'  | Element header
                    ---------------------
              2     |      criteria     | Fullword integer
                    ---------------------
              3     |      cvalue       | Short floating-point number
                    ---------------------
              4     |      uvalue       | Short floating-point number
                    ---------------------
              5     |      vvalue       | Short floating-point number
                    ---------------------

Set Polyhedron Edge Culling (GPPHEC)

This value supplies edge culling information to the workstation, and is used when drawing polyhedron edge output primitives.

                    ---------------------
     WORDS 1        | length | X'004E'  | Element header
                    ---------------------
           2        |       mode        | Fullword integer
                    ---------------------

Set Polyline Index (GPPLI)

(Ref #92.) This structure element sets the current polyline bundle index to the specified value. All subsequent polyline primitives use the contents of the specified bundle table entry for all polyline attributes whose attribute source flag is set to BUNDLED screen

                  ------------------------
        WORDS 1   |   length  | X'0001'  | Element header
                  ------------------------
              2   |polyline bundle index | Fullword integer
                  ------------------------

Set Linetype (GPLT)

This structure element sets the current line type to the specified value. All subsequent polyline primitives use this line type for drawing the primitive if the line type attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'0008'  | Element header
                    ---------------------
              2     |     linetype      | Fullword integer
                    ---------------------

Set Polyline End Type (GPPLET)

This structure element sets the polyline end type to the specified value.

                    ---------------------
        WORDS 1     | length | X'001F'  |  Element header
                    ---------------------
              2     |      endtype      |  Fullword integer
                    ---------------------

Set Linewidth Scale Factor (GPLWSC)

This structure element sets the current line width scale factor to the specified value. All subsequent polyline primitives use this value to determine the line width of lines to be drawn if the attribute source flag is set to INDIVIDUAL screen

                 --------------------------
       WORDS 1   |    length  |  X'0009'  | Element header
                 --------------------------
             2   | linewidth scale factor | Short floating-point number
                 --------------------------

Set Polyline Color Index (GPPLCI)

This structure element sets the current polyline color index to the specified value. All subsequent polyline primitives use this color index for drawing the primitive if the polyline color index attribute source flag is set to INDIVIDUAL screen

                   ------------------------
        WORDS 1    |  length   |  X'000A' | Element header
                   ------------------------
              2    | polyline color index | Fullword integer
                   ------------------------

Set Polyline Color Direct (GPPLCD)

This structure element is used when drawing polyline output primitives. All subsequent polyline primitives use this value to determine the color of the output primitives if the polyline color attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'0028'  | Element header
                    ---------------------
              2-4   |  polyline color   | 3 short floating-point numbers
                    |                   |
                    ---------------------

Set Polyline Shading Method (GPPLSM)

This structure element sets the current polyline shading method. This shading method is used at structure traversal time to render all subsequent Polyline with Data primitives with vertex colors defined. The vertex colors are interpolated through connecting polylines when the polyline shading method is 2=POLYLINE_SHADING_COLOR screen The i% sup th vertex color is used to color the i% sup th line when the polyline shading method is 1=POLYLINE_SHADING_NONE screen

                    ---------------------
        WORDS 1     | length | X'0062'  | Element header
                    ---------------------
              2     |     method        | Fullword integer
                    ---------------------
 

Polymarker Attributes

Set Polymarker Index (GPPMI)

This structure element sets the current polymarker bundle index to the specified value. All subsequent polymarker primitives use the contents of the specified bundle table entry for all polymarker attributes whose attribute source flags are set to BUNDLED screen

                --------------------------
     WORDS 1    |    length  | X'0002'   | Element header
                --------------------------
           2    | polymarker bundle index| Fullword integer
                --------------------------

Set Marker Type (GPMT)

This structure element sets the current marker type. All subsequent polymarker primitives use this marker type for identifying each point if the marker type attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'000B'  | Element header
                    ---------------------
              2     |    marker type    | Fullword integer
                    ---------------------

Set Marker Size Scale Factor (GPMSSC)

This structure element sets the current marker size scale factor. All subsequent polymarker primitives use this value to determine the size to draw the markers if the attribute source flag is set to INDIVIDUAL screen

               ---------------------------
      WORDS 1  |   length   |  X'000C'   | Element header
               ---------------------------
            2  |marker size scale factor | Short floating-point number
               ---------------------------

Set Polymarker Color Index (GPPMCI)

This structure element sets the current polymarker color index to the specified value. All subsequent polymarker primitives use this color index for drawing the primitive if the polymarker color index attribute source flag is set to INDIVIDUAL screen

                  --------------------------
        WORDS 1   |   length   |   X'000D' | Element header
                  --------------------------
              2   | polymarker color index | Fullword integer
                  --------------------------

Set Polymarker Color Direct (GPPMCD)

This structure element is used when drawing polymarker output primitives. All subsequent polymarker primitives use this value for drawing the primitive if the polymarker color attribute source flag is set to INDIVIDUAL.

                    ---------------------
        WORDS 1     | length | X'0029'  | Element header
                    ---------------------
              2-4   | polymarker color  | 3 short floating-point numbers
                    |                   |
                    ---------------------

Text Attributes

Set Character Height (GPCHH)

This structure element sets the current character height. All subsequent geometric text primitives will be drawn with this value for the character height.

                    ---------------------
        WORDS 1     | length | X'0013'  | Element header
                    ---------------------
              2     | character height  | Short floating-point number
                    ---------------------

Set Character Line Scale Factor (GPCHLS)

This structure element sets the value to be used to determine the height of the characters when rendering all subsequent character line primitives.

                    ---------------------
        WORDS 1     | length | X'0027'  | Element header
                    ---------------------
              2     | line scale factor | Short floating-point number
                    ---------------------

Set Character Up Vector (GPCHUP)

This structure element sets the current geometric text character up vector to the specified value. The base vector is set to 90[default] clockwise from the up vector. All subsequent geometric text primitives are drawn with this value for the character up vector. The character up vector specifies the direction of the font coordinate y-axis within the text reference coordinate system. The character base vector specifies the direction of the font coordinate x-axis with the text reference coordinate system.

                   ---------------------
     WORDS 1       |  length  | X'0014'| Element header
                   ---------------------
           2       |    X direction    | Short floating-point number
                   ---------------------
           3       |    Y direction    | Short floating-point number
                   ---------------------

Set Character Up and Base Vectors (GPCHUB)

This structure element sets the current geometric text character up vector and base vector to the specified value. The character up vector specifies the direction of the font coordinate y-axis within the text reference coordinate system. The character base vector specifies the direction of the font coordinate x-axis with the text reference coordinate system.

                    ---------------------
        WORDS 1     | length | X'0026'  | Element header
                    ---------------------
              2     |  up X-direction   | Short floating-point number
                    ---------------------
              3     |  up Y-direction   | Short floating-point number
                    ---------------------
              4     | base X-direction  | Short floating-point number
                    ---------------------
              5     | base Y-direction  | Short floating-point number
                    ---------------------

Set Text Path (GPTXPT)

This structure element sets the current geometric text path to the specified value. All subsequent geometric text primitives are drawn with this value for the text path.

                    ---------------------
     WORDS 1        | length |  X'0015' | Element header
                    ---------------------
           2        |     text path     | Fullword integer
                    ---------------------

Set Text Alignment (GPTXAL)

This structure element sets the current geometric text alignment to the specified value. All subsequent geometric text primitives are drawn with this value for text alignment.

                    ---------------------
        WORDS 1     | length | X'0017'  | Element header
                    ---------------------
              2     |    horizontal     | Fullword integer
                    ---------------------
              3     |    vertical       | Fullword integer
                    ---------------------

Set Character Positioning Mode (GPCHPM)

This structure element sets the current character positioning mode entry to the specified value. The character positioning mode determines whether the character positioning box for the specific character or the nominal positioning box for the font should be used in rendering annotation and geometric text primitives.

                    ---------------------
        WORDS 1     | length | X'0016'  | Element header
                    ---------------------
              2     |       mode        | Fullword integer
                    ---------------------

Set Text Index (GPTXI)

This structure element sets the current text bundle index to the specified value. All subsequent annotation and geometric text primitives use the contents of the specified bundle table entry for all text attributes whose attribute source flags are set to BUNDLED screen

                    ---------------------
        WORDS 1     | length | X'0003'  | Element header
                    ---------------------
              2     | text bundle index | Fullword integer
                    ---------------------

Set Text Font (GPTXFO)

This structure element sets the current text font to the specified value. All subsequent annotation and geometric text primitives are drawn in this font if the text font attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'000E'  | Element header
                    ---------------------
              2     |    text font      | Fullword integer
                    ---------------------

Set Text Precision (GPTXPR)

This structure element sets the current text precision to the specified value. All subsequent annotation and geometric text primitives are drawn at this precision if the text precision attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'000F'  | Element header
                    ---------------------
              2     |  text precision   | Fullword integer
                    ---------------------

Set Text Linewidth Scale Factor (GPTLWS)

This structure element specifies the width of a geometric text primitive's lines (strokes) as a fraction of the nominal text width. The device support multiplies this scale factor times the nominal linewidth on the corresponding device to determine the requested width. The calculated value is then mapped to the closest width available on the device. A scale factor of 1.0 generates a nominal size text line on any workstation. At structure traversal, this scale factor is used, when the text line width factor ASF is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'0077'  | Element header
                    ---------------------
              2     |     lwidth        | Floating point
                    --------------------- number

Set Character Expansion Factor (GPCHXP)

This structure element sets the current character expansion factor. It indicates the deviation of the character's width/height ratio from the font default. All subsequent annotation and geometric text primitives are drawn with this value for the character expansion factor if its attribute source flag is set to INDIVIDUAL screen

                ------------------------------
       WORDS 1  |     length   |  X'0010'    | Element header
                ------------------------------
             2  | character expansion factor | Short floating-point number
                ------------------------------

Set Character Spacing (GPCHSP)

This structure element sets the current character spacing, indicating the additional amount of space to be placed between characters as a fraction of the character's design. All subsequent annotation and geometric text primitives are drawn with this value for the character spacing if its attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'0011'  | Element header
                    ---------------------
              2     | character spacing | Short floating-point number
                    ---------------------

Set Text Color Index (GPTXCI)

This structure element sets the text color index to the specified value. All subsequent annotation and geometric text primitives use this color index for drawing the primitive if the text color index attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'0012'  | Element header
                    ---------------------
              2     | text color index  | Fullword integer
                    ---------------------

Set Text Color Direct (GPTXCD)

This structure element sets the current text color to the specified value. All subsequent annotation and geometric text primitives use the direct color values for drawing the primitive if the text color attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'002A'  | Element header
                    ---------------------
              2-4   |    text color     | 3 short floating-point numbers
                    |                   |
                    ---------------------

Annotation Text Attributes

Set Annotation Text Height Scale Factor (GPAHSC)

This structure element sets the current annotation height scale factor, specifying a ratio of the annotation character height to the workstation's nominal character height. All subsequent annotation text primitives are drawn with this value for the height scale factor.

                    ---------------------
        WORDS 1     | length | X'0021'  | Element header
                    ---------------------
              2     | annotation height | Short floating-point number
                    |  scale factor     |
                    ---------------------
 

Set Annotation Text Height (GPAH)

This structure element sets the current annotation height to the specified value.

                    ---------------------
        WORDS 1     | length | X'0022'  | Element header
                    ---------------------
              2     | annotation height | Short floating-point number
                    ---------------------

Set Annotation Style (GPAS)

This structure element sets the text style determining how the Annotation Text Relative 2/3 primitives are to be visualized. This style value is used at the structure traversal time to render all subsequent annotation text relative primitives.

             -----------------------------
 WORDS 1     |  length     |   X'0020'   |  Element header
             -----------------------------
       2     |         style             |  Fullword integer
             -----------------------------
 

Set Annotation Text Up Vector (GPAUP)

This structure element sets the current annotation text character up vector to the specified value.

                    ---------------------
        WORDS 1     | length | X'0023'  | Element header
                    ---------------------
              2     |    X direction    | Short floating-point number
                    ---------------------
              3     |    Y direction    | Short floating-point number
                    ---------------------

Set Annotation Text Path (GPAPT)

This structure element sets the current annotation text path to the specified value.

                    ---------------------
        WORDS 1     | length | X'0024'  | Element header
                    ---------------------
              2     | annotation path   | Fullword integer
                    ---------------------

Set Annotation Text Alignment (GPAAL)

This structure element sets the current annotation text alignment to the specified value, affecting the manner in which the annotation text extent rectangle is positioned in relation to the text position.

                    ---------------------
        WORDS 1     | length | X'0025'  | Element header
                    ---------------------
              2     |    horizontal     | Fullword integer
                    ---------------------
              3     |    vertical       | Fullword integer
                    ---------------------

Polygon Attributes

Set Surface Approximation Criteria (GPSAC)

This structure element sets the current surface approximation criteria to the specified value.

                    ---------------------
        WORDS 1     | length | X'004D'  | Element header
                    ---------------------
              2     |      criteria     | Fullword integer
                    ---------------------
              3     |      uvalue       | Short floating-point number
                    ---------------------
              4     |      vvalue       | Short floating-point number
                    ---------------------

Set Polygon Culling (GPPGC)

This structure element sets the current polygon culling mode to the specified value. This value is used when rendering polygon output primitives, and supplies polygon culling information to the workstation.

                    ---------------------
        WORDS 1     | length | X'0045'  | Element header
                    ---------------------
              2     |       mode        | Fullword integer
                    ---------------------

Interior Attributes

Set Face Distinguish Mode (GPFDMO)

This structure element sets the current face distinguish mode to the specified value.

                    ---------------------
        WORDS 1     | length | X'0048'  | Element header
                    ---------------------
              2     |       mode        | Fullword integer
                    ---------------------

Set Light Source State (GPLSS)

This structure element adds light source indices specified in the activation list to the current light source state and removes those in the deactivation list.

                    ---------------------
        WORDS 1     | length | X'0049'  | Element header
                    ---------------------
              2     |      dnum         | Fullword integer
                    ---------------------
              3     |      anum         | Fullword integer
                    ---------------------
              4     |      dlist        | 'dnum' x fullword integers
                    /                   /
                    /                   /
                    ---------------------
                    |      alist        | 'anum' x fullword integers
                    /                   /
                    /                   /
                    ---------------------

Set Lighting Calculation Mode (GPLMO)

This structure element sets the current lighting calculation mode to the specified value. This value is used when creating polygon output primitives and supplies lighting information to the workstation.

                    ---------------------
        WORDS 1     | length | X'004F'  | Element header
                    ---------------------
              2     |       mode        | Fullword integer
                    ---------------------

Set Interior Index (GPII)

This structure element specifies an index into the interior bundle table, affecting only those attributes for which the ASF is set to BUNDLED. All subsequent polygon primitives use the contents of the specified bundle table entry for all interior attributes whose attribute source flags are set to BUNDLED screen

                  ------------------------
        WORDS 1   |  length  | X'0005'   | Element header
                  ------------------------
              2   |interior bundle index | Fullword integer
                  ------------------------

Set Interior Style (GPIS)

This structure element sets the current interior style to the specified value. This value is used when drawing polygon output primitives. All subsequent primitives use this attribute when drawing the interior if the corresponding attribute source flag is set to INDIVIDUAL.

                    ---------------------
        WORDS 1     | length | X'0018'  |  Element header
                    ---------------------
              2     |      style        |  Fullword integer
                    ---------------------

Set Interior Style Index (GPISI)

This structure element sets the current interior style index, specifying an index into the pattern table or the workstation-dependent hatch table (depending on the setting of the interior style). All subsequent primitives use this attribute when drawing the interior if the corresponding attribute source flag is set to INDIVIDUAL and the current interior style is HATCH or PATTERN.

                    ---------------------
        WORDS 1     | length | X'0019'  | Element header
                    ---------------------
              2     |       index       | Fullword integer
                    ---------------------

Set Interior Color Index (GPICI)

This structure element sets the current interior color index to the specified color index. All subsequent primitives use this attribute when drawing the interior if the corresponding attribute source flag is set to INDIVIDUAL and the current interior style is SOLID or HATCH screen

                   ----------------------
        WORDS 1    |  length | X'001A'  |  Element header
                   ----------------------
              2    |interior color index|  Fullword integer
                   ----------------------

Set Interior Color Direct (GPICD)

This structure element sets the current interior color to the specified value. It is used when creating output primitives. All subsequent primitives use this direct color value when drawing the interior if the corresponding attribute source flag is set to INDIVIDUAL and the current interior style is set to SOLID or HATCH.

                    ---------------------
        WORDS 1     | length | X'002B'  | Element header
                    ---------------------
              2-4   |  interior color   | 3 short floating-point numbers
                    |                   |
                    ---------------------

Set Back Interior Color Index (GPBICI)

This structure element sets the current back interior color index to the specified color index. All subsequent primitives use this attribute when drawing the back interior if the corresponding attribute source flag is set to INDIVIDUAL and the current interior style is set to SOLID or HATCH and face distinguish mode is set to use the back color attribute.

                    ---------------------
        WORDS 1     | length | X'003F'  | Element header
                    ---------------------
              2     |back interior color| Fullword integer
                    |      index        |
                    ---------------------

Set Back Interior Color Direct (GPBICD)

This structure element sets the current back interior color to the specified value. This value is used when drawing polygon output primitives. All subsequent primitives use this direct color value when drawing the back interior if the corresponding attribute source flag is set to INDIVIDUAL and the current interior style is set to SOLID or HATCH and face distinguish mode is set to use the back color attribute.

                    ---------------------
        WORDS 1     | length | X'0040'  | Element header
                    ---------------------
              2-4   |   back interior   | 3 short floating-point numbers
                    |      color        |
                    ---------------------

Set Specular Color Index (GPSCI)

This structure element sets the current specular color index to the specified color value for area defining geometries in lighting calculations.

                    ---------------------
        WORDS 1     | length | X'0041'  | Element header
                    ---------------------
              2     |  specular color   | Fullword integer
                    |       index       |
                    ---------------------

Set Specular Color Direct (GPSCD)

This structure element sets the current specular color to the specified value for area defining geometries in lighting calculations.

                    ---------------------
        WORDS 1     | length | X'0042'  | Element header
                    ---------------------
             2-4    |  specular color   | 3 short floating-point numbers
                    |                   |
                    ---------------------

Set Back Specular Color Index (GPBSCI)

This structure element sets the current back specular color index to the specified value for area defining geometries in lighting calculations.

                    ---------------------
     WORDS 1        | length | X'0043'  | Element header
                    ---------------------
           2        |  back specular    | Fullword integer
                    |   color index     |
                    ---------------------

Set Back Specular Color Direct (GPBSCD)

This structure element sets the current back specular color to the specified value for area defining geometries in lighting calculations.

                    ---------------------
        WORDS 1     | length | X'0044'  | Element header
                    ---------------------
              2-4   |back specular color| 3 short floating-point numbers
                    |                   |
                    ---------------------

Set Surface Properties (GPSPR)

This structure element sets the current surface properties to the specified values.

                    ---------------------
        WORDS 1     | length | X'0046'  | Element header
                    ---------------------
              2     |      ambient      | Short floating-point number
                    ---------------------
              3     |      diffuse      | Short floating-point number
                    ---------------------
              4     |      specular     | Short floating-point number
                    ---------------------
              5     |      exponent     | Short floating-point number
                    ---------------------
              6     |      transparent  | Short floating-point number
                    ---------------------

Set Back Surface Properties (GPBSPR)

This structure element sets the current back surface properties to the specified values.

                    ---------------------
                    | length | X'0047'  | Element header
                    ---------------------
              2     |      ambient      | Short floating-point number
                    ---------------------
              3     |      diffuse      | Short floating-point number
                    ---------------------
              4     |      specular     | Short floating-point number
                    ---------------------
              5     |      exponent     | Short floating-point number
                    ---------------------
              6     |      transparent  | Short floating-point number
                    ---------------------

Set Back Transparency Coefficient (GPBTCO)

This structure element specifies the source transparency coefficient used to blend subsequent back facing portions of area primitives with previously rendered output.

                    ---------------------
        WORDS 1     | length | X'0066'  | Procedure header
                    ---------------------
              2     |      coeff        | Short floating-point number
                    ---------------------
 

Set Back Blending Function (GPBBLF)

This structure element specifies the source blending function and the destination blending function used to blend subsequent back facing portions of area primitives with previously rendered output.

                    --------------------
        WORDS 1     | length | X'0068' |  Procedure header
                    --------------------
              2     |      srcf        |  Fullword integer
                    --------------------
              3     |     destf        |  Fullword integer
                    --------------------

Set Parametric Surface Characteristics (GPPSC)

This structure element sets the characteristics for rendering parametric surfaces in wireframe.

                    ---------------------
        WORDS 1     | length | X'0051'  | Element header
                    ---------------------
              2     |        type       | Fullword integer
                    ---------------------
 
        for type=ISOPARAMETRIC LINES
 
                    ---------------------
        WORDS 1     |       scope       | Fullword integer
                    ---------------------
              2     |     number of     | Fullword integer
                    |   isoparametrics  |
                    |   in u direction  |
                    ---------------------
              3     |     number of     | Fullword integer
                    |   isoparametrics  |
                    |   in v direction  |
                    ---------------------

Set Data Morphing Factors (GPDMF)

This structure element supplies data morphing factors which affect morphing of subsequent primitives supplied with data morphing vectors.

 
                    ---------------------
      WORDS 1       | length | X '0073' | Procedure header
                    ---------------------
            2       |     flength       | Fullword integer
                    ---------------------
            3       |      fdata        |    flength x
                    /                   / Short floating-point number
                    ---------------------

Set Back Data Morphing Factors (GPBDMF)

This structure element supplies back data morphing factors which affect morphing of subsequent back facing portions of area primitives supplied with data morphing vectors.

 
                    ---------------------
      WORDS 1       | length | X '0074' | Procedure header
                    ---------------------
            2       |     flength       | Fullword integer
                    ---------------------
            3       |      fdata        |    flength x
                    /                   / Short floating-point number
                    ---------------------

Set Data Mapping Index (GPDMI)

This structure element specifies an entry in the workstation's data mapping table which contains values used to data map subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '006C' | Procedure header
                    ---------------------
            2       |       index       | Fullword integer
                    ---------------------

Set Back Data Mapping Index (GPBDMI)

This structure element specifies an entry in the workstation's data mapping table which contains values used to data map subsequent back facing portions of area primitives.

 
                    ---------------------
      WORDS 1       | length | X '006D' | Procedure header
                    ---------------------
            2       |       index       | Fullword integer
                    ---------------------

Set Data Filtering Method (GPDFM)

This structure element specifies the filtering methods used when performing data mapping.

 
                    ---------------------
      WORDS 1       | length | X '006E' | Procedure header
                    ---------------------
            2       |      minfm        | Fullword integer
                    ---------------------
            3       |      magfm        | Fullword integer
                    ---------------------
            4       |      boundu       | Fullword integer
                    ---------------------
            5       |      boundv       | Fullword integer
                    ---------------------
 

Set Back Data Filtering Method (GPBDFM)

This structure element specifies the filtering methods used when performing data mapping. These values are used when rendering back facing portions of subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '006F' | Procedure header
                    ---------------------
            2       |      minfm        | Fullword integer
                    ---------------------
            3       |      magfm        | Fullword integer
                    ---------------------
            4       |      boundu       | Fullword integer
                    ---------------------
            5       |      boundv       | Fullword integer
                    ---------------------
 

Set Data Matrix 2 (GPDM2)

This structure element specifies a matrix used to modify the data mapping values specified in certain primitives that support data mapping.

 
             ----------------------------
 WORDS 1     |   length   | X'0070'     | Procedure header
             ----------------------------
       2-10  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------

Set Back Data Matrix 2 (GPBDM2)

This structure element specifies a matrix used to modify the data mapping values on back facing portions of certain primitives that support data mapping.

 
             ----------------------------
 WORDS 1     |   length   | X'0071'     | Element header
             ----------------------------
       2-10  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------
 
 

Set Reflectance Model (GPRMO)

This structure element specifies the method which is used to control the lighting calculations performed on subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '0063' | Element header
                    ---------------------
            2       |      model        | Fullword integer
                    ---------------------

Set Back Reflectance Model (GPBRMO)

This structure element specifies the method which is used to control the lighting calculations performed on back facing portions of subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '0069' | Element header
                    ---------------------
            2       |      model        | Fullword integer
                    ---------------------

Set Interior Shading Method (GPISM)

This structure element specifies the method to shade the interior of subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '006A' | Procedure header
                    ---------------------
            2       |      method       | Fullword integer
                    ---------------------

Set Back Interior Shading Method (GPBISM)

This structure element specifies the method to shade the interior of back facing portions of subsequent area primitives.

 
                    ---------------------
      WORDS 1       | length | X '006B' | Procedure header
                    ---------------------
            2       |      method       | Fullword integer
                    ---------------------

Edge Attributes

Set Edge Index (GPEI)

This structure element sets the edge bundle index to the specified value. All subsequent polygon primitives use the contents of the specified bundle table entry for all edge attributes whose attribute source flags are set to BUNDLED screen

                    ---------------------
        WORDS 1     | length | X'0004'  | Element header
                    ---------------------
              2     | edge bundle index | Fullword integer
                    ---------------------

Set Edge Flag (GPEF)

This structure element sets the visibility of edges. All subsequent primitives use this attribute to determine whether the edges should be drawn if the attribute source flag is set to INDIVIDUAL screen

                    ---------------------
        WORDS 1     | length | X'001B'  | Element header
                    ---------------------
              2     |    edge flag      | Fullword integer
                    ---------------------

Set Edge Linetype (GPELT)

This structure element sets the current edge line type to the specified value. All subsequent primitives use this edge line type for drawing the primitive if the edge line type attribute source flag is set to INDIVIDUAL and the edge flag is set to ON screen

                    ---------------------
        WORDS 1     | length | X'001C'  | Element header
                    ---------------------
              2     |  edge linetype    | Fullword integer
                    ---------------------

Set Edge Scale Factor (GPESC)

This structure element sets the current edge scale factor to the specified value. All subsequent primitives use this value to determine the width of the edges to be drawn if the attribute source flag is set to INDIVIDUAL and the edge flag is set to ON screen

                    ---------------------
        WORDS 1     | length | X'001E'  | Element header
                    ---------------------
              2     | edge scale factor | Short floating-point number
                    ---------------------

Set Edge Color Index (GPECI)

This structure element sets the current edge color index to the specified value. All subsequent primitives use this color index for drawing the edges if the edge color index attribute source flag is set to INDIVIDUAL and the edge flag is set to ON screen

                    ---------------------
        WORDS 1     | length | X'001D'  | Element header
                    ---------------------
              2     | edge color index  | Fullword integer
                    ---------------------

Set Edge Color Direct (GPECD)

This structure element sets the current edge color entry to the specified value. All subsequent output primitives use the direct color values for drawing the edges if the edge color direct attribute source flag is set to INDIVIDUAL and the edge flag is set to ON screen

                    ---------------------
        WORDS 1     | length | X'002C'  | Element header
                    ---------------------
              2-4   |    edge color     | 3 short floating-point numbers
                    |                   |
                    ---------------------

Transformation Setting Structure Elements

Modeling Transformation

Set Global Transformation 3 (GPGLX3)

This structure element specifies a global modeling transformation in three-dimensional modeling space, causing the specified value to become the current global transformation for the current structure.

 
             ----------------------------
 WORDS 1     |   X'0044'  | X'00D2'     | Element header
             ----------------------------
       2-17  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 4 matrix element| Short floating-point number
             ----------------------------

Set Global Transformation 2 (GPGLX2)

This structure element specifies a global modeling transformation in two-dimensional modeling space, causing the specified value to become the current global transformation for the current structure.

 
             ----------------------------
 WORDS 1     |   X'0028'  | X'00D3'     | Element header
             ----------------------------
       2-10  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------

Set Modeling Transformation 3 (GPMLX3)

(Ref #93.) This structure element specifies a modification for a local modeling transformation in three-dimensional modeling space. The specified matrix either replaces, is pre-concatenated with, or is post-concatenated with the current local modeling transformation.

             ----------------------------
 WORDS 1     |   length    | X'00D0'    | Element header
             ----------------------------
       2     |     composition type     | Fullword integer
             ----------------------------
       3-18  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 4 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 4 col 4 matrix element| Short floating-point number
             ----------------------------

Set Modeling Transformation 2 (GPMLX2)

This structure element specifies a modification for a local modeling transformation in two-dimensional modeling space. The specified matrix either replaces, is pre-concatenated with, or is post-concatenated with the current local modeling transformation.

             ----------------------------
 WORDS 1     |   X'002C'  |  X'00D1'    | Element header
             ----------------------------
       2     |     composition type     | Fullword integer
             ----------------------------
       3-11  |row 1 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 1 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 2 col 3 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 1 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 2 matrix element| Short floating-point number
             ----------------------------
             |row 3 col 3 matrix element| Short floating-point number
             ----------------------------

Set Modeling Clipping Indicator (GPMCI)

This structure element indicates whether or not to perform modeling clipping on subsequent primitives.

                    ---------------------
        WORDS 1     | length | X'00D6'  | Procedure header
                    ---------------------
              2     |     indicator     | Fullword integer
                    ---------------------

Restore Modeling Clipping Volume (GPRMCV)

This structure element causes the current modeling clipping volume in the traversal state list to be restored to the volume inherited by that structure.

 
                    ---------------------
        WORDS 1     | length | X'00D7'  | Procedure header
                    ---------------------
 

Set Modeling Clipping Volume 3 (GPMCV3)

This structure element sets the current modeling clipping volume in the traversal state list.

 
                    ---------------------
        WORDS 1     | length | X'00D4'  | Procedure header
                    ---------------------
              2     |     operator      | Fullword integer
                    ---------------------
              3     |      number       | Fullword integer
                    ---------------------
              4 - n |     lhspace       | number x half_space
                    ---------------------
        Half_space format
                    ---------------------
                    |      point        | Point 3
                    ---------------------
                    |      normal       | Vector 3
                    ---------------------
 

Set Modeling Clipping Volume 2 (GPMCV2)

This structure element sets the current modeling clipping volume in the traversal state list.

 
                    ---------------------
        WORDS 1     | length | X'00D5'  | Procedure header
                    ---------------------
              2     |     operator      | Fullword integer
                    ---------------------
              3     |      number       | Fullword integer
                    ---------------------
              4 - n |     lhspace       | number x half_space
                    ---------------------
        Half_space format
                    ---------------------
                    |      point        | Point 2
                    ---------------------
                    |      normal       | Vector 2
                    ---------------------
 

Miscellaneous Structure Elements

View selection

Set View Index (GPVWI)

This structure element defines a view index to replace the current view index. The view index specifies an entry in the workstation's view table from which to select view orientation and mapping transformations.

                    ---------------------
        WORDS 1     | length | X'0008'  | Element header
                    ---------------------
              2     |       index       | Fullword integer
                    ---------------------
                    |      reserved     | Fullword integer
                    ---------------------
 

Traversal Control

Execute Structure (GPEXST)

This structure element defines a call or invocation of another structure, relating two structures.

                    ---------------------
        WORDS 1     | length | X'00FA'  | Element header
                    ---------------------
              2     |   structure id    | Fullword integer
                    ---------------------
              3     |     reserved      | Fullword integer
                    ---------------------
              4     |     reserved      | Fullword integer
                    ---------------------

Test Extent 3 (GPTEX3)

This structure element modifies the cull flag (30th bit) and the prune flag (31st bit) within the current set of condition flags. These flags are used when processing subsequent conditional execute structure elements and conditional return elements.

                    ---------------------
        WORDS 1     | length | X'00F1'  | Element header
                    ---------------------
              2-4   |      corner1      | 3 short floating-point numbers
                    |                   |
                    ---------------------
              5-7   |      corner2      | 3 short floating-point numbers
                    |                   |
                    ---------------------
              8     |  cull table index | Fullword integer
                    ---------------------

Test Extent 2 (GPTEX2)

This structure element modifies the cull flag (30th bit) and the prune flag (31st bit) within the current set of condition flags. These flags are used when processing subsequent conditional execute structure elements and conditional return elements.

                    ---------------------
        WORDS 1     | length | X'00F2'  | Element header
                    ---------------------
              2-3   |      corner1      | 2 short floating-point numbers
                    |                   |
                    ---------------------
              4-5   |      corner2      | 2 short floating-point numbers
                    |                   |
                    ---------------------
              6     |  cull table index | Fullword integer
                    ---------------------

Set Condition (GPCOND)

This structure element modifies the current condition flag with the specified value.

                    ---------------------
        WORDS 1     | length | X'00F3'  | Element header
                    ---------------------
              2     |      onflag       | Fullword integer
                    ---------------------
              3     |      offflag      | Fullword integer
                    ---------------------

Conditional Execute Structure (GPCEXS)

This structure element specifies a conditional call or invocation of another structure. The current set of condition flags are tested against the specified mask and conditionscreen If the condition is satisfied, the target structure is invoked.

                    ---------------------
        WORDS 1     | length | X'00FE'  | Element header
                    ---------------------
              2     |      mask         | Fullword integer
                    ---------------------
              3     |      condition    | Fullword integer
                    ---------------------
              4     |      type         | Fullword integer
                    ---------------------
              5     |   structure id    | Fullword integer
                    ---------------------
              6     |      reserved     | Fullword integer
                    ---------------------
              7     |      reserved     | Fullword integer
                    ---------------------

Conditional Return (GPCRET)

This structure element specifies a conditional return to the parent structure.

                    ---------------------
        WORDS 1     | length | X'00F0'  | Element header
                    ---------------------
              2     |      mask         | Fullword integer
                    ---------------------
              3     |      condition    | Fullword integer
                    ---------------------

Identification

Insert Label (GPINLB)

This structure element defines a label that the application uses to reference and modify structure elements.

                    ---------------------
        WORDS 1     | length | X'00FB'  | Element header
                    ---------------------
              2     |      label        | Fullword integer
                    ---------------------
              3     |      reserved     | Fullword integer
                    ---------------------

Set Pick Identifier (GPPKID)

This structure element sets the current pick identifier to the specified value.

                    ---------------------
        WORDS 1     | length | X'00FC'  | Element header
                    ---------------------
              2     |      pickid       | Fullword integer
                    ---------------------
              3     |      reserved     | Fullword integer
                    ---------------------

Frame Buffer Control

Set Frame Buffer Protect Mask (GPFBM)

This structure element sets the current frame buffer write protect mask to the specified value.

                    ---------------------
        WORDS 1     | length | X'0031'  | Element header
                    ---------------------
              2     | write protect mask| Fullword integer
                    ---------------------

Set Frame Buffer Comparison (GPFBC)

This structure element sets the current frame buffer comparison to the specified value.

                    ---------------------
        WORDS 1     | length | X'0032'  | Element header
                    ---------------------
              2     |      type         | Fullword integer
                    ---------------------
              3     |  comparison mask  | Fullword integer
                    ---------------------
              4     |  comparison value | Fullword integer
                    ---------------------

Application-Defined Data

Insert Application Data (GPINAD)

This structure element allows the insertion of application specific data into a structure element. The data is ignored during traversal. The element is padded to a fullword boundary following the application defined data.

                    ---------------------
        WORDS 1     | length | X'00E4'  | Element header
                    ---------------------
              2     |      length       | Fullword integer
                    ---------------------
              3     |   application     | Byte string
                    /   defined data    /
                    /                   /
                    ---------------------

Null Data (GPNULL)

This structure element defines a null data position in a structure. The data is iqnored during traversal.

                    ---------------------
        WORDS 1     | length | X'00E5'  | Element header
                    ---------------------

Workstation Dependent Output (GPWDO)

This structure element defines data the application is sending directly to the workstation.

                    ---------------------
        WORDS 1     | length | X'00F6'  | Element header
                    ---------------------
              2     |      length       | Fullword integer
                    ---------------------
              3     |   application     | Byte string
                    /   defined data    /
                    /                   /
                    ---------------------

[ Previous | Next | Contents | Glossary | Home | Search ]