next up previous contents index
Next: Viewing in 3D Up: GKS-3D Primer Previous: The Drawing Primitives

The Output Attributes

As for the primitives, GKS-3D uses almost the same output attributes as GKS-2D (described in Chapter on Page gif), but with the three following additions:

  1. Extra attributes are required for the new Fill Area Set primitive.

  2. The View Index attribute. This is analogous to the Normalization Transformation index attribute, and specifies which viewing transformation is to be used to process the primitive.
  3. The Hidden Line/Hidden Surface (HLHSR) attribute specifies which HLHSR algorithm should be used to process the primitive (if HLHSR is supported by the workstation).

The Fill Area Set primitive uses the same attributes as Fill Area to control the interior of the polygons (see section on Page gif), plus the following which allow independent control of the edges:

EDFLAG
the Fill Area Set edge flag (ASF 1). Set by GSEDFG(EDFLAG). EDFLAG may take the vales 'GON' or 'GOFF'.
EDTYPE
the Fill Area Set edge type (ASF 2). Set by GSEDT(EDTYPE). EDTYPE is an integer value which is workstation-dependent.
EDWSF
the Fill Area Set edge width scale factor (ASF 3). Set by GSEWSC(EDWSF). The value of EDWSF is a real number which modifies the width of the line used to draw the edge of the Fill Area Set.
EDCI
the Fill Area Set edge colour index (ASF 4). Set by GSEDCI(EDCI).
The numbers in brackets are, for the GTS-GRAL implementation, the indices into the integer array ASFLST(4) used to set the corresponding Attribute Source Flags by calling:

CALL GASF3(ASFLST)
However, the DIS FORTRAN binding uses GASF3 to set all the Attribute Source Flags in one go by defining the array ASFLST to be of length 17, where elements 1 to 13 correspond to the 2D case and the last four elements are those listed here.

Note that the Fill Area Set primitive is rendered using two independent sets of attributes, one for the interior, and one for the edge. This separate set of edge attributes also has its own attribute bundle, selected by calling GSEDI, plus a corresponding routine to Set the EDge Representation:

GSEDI(EDI)
     and
GSEDR(WKID, EDI, EDFLAG, EDTYPE, EDWSF, EDCI)


next up previous contents index
Next: Viewing in 3D Up: GKS-3D Primer Previous: The Drawing Primitives


Janne Saarela
Mon Apr 3 17:00:12 METDST 1995