void pgse(
Pint id /* gse identifier */ const Pgse_data *gse /* gse data record */
)
typedef union {
struct Pgse_r1 {
Pint user_function_no;
} gse_r1;
struct Pgse_r2 {
Pfloat transparency_coeff;
} gse_r2;
struct Pgse_r3 {
Pint zb_shift;
} gse_r3;
struct Pgse_r4 {
Pint zb_edge_shift;
} gse_r4;
struct Pgse_r5 {
Pgcolr highlight_colr;
} gse_r5;
struct Pgse_r6 {
Pint antialiasing_id;
} gse_r6;
struct Pgse_r7 {
Pint cell_array_align;
} gse_r7;
} Pgse_data;
A GSE element is inserted in the open structure after element pointer or replaces the element indicated by element pointer, depending on edit mode. Element pointer then points to the GSE element. The value specified by parameters is associated with the element.
The content of the GSE element is implementation dependant. GPHIGS defines the following identifiers for id :
PGSE_ID_USER_FUNCTION_CALL register a user function call in the structure.
PGSE_ID_TRANSPARENCY set transparency coefficient.
PGSE_ID_ZB_SHIFT set z-buffer shift .
PGSE_ID_ZB_EDGE_SHIFT set edge z-buffer shift.
PGSE_ID_HIGHLIGHT_COLR set highlighting colour
PGSE_ID_ANTIALIASING_ID set antialiasing identifier
PGSE_ID_CELL_ARRAY_ALIGN set edge cell array alignment.
GSE effect is described in GPHIGS user's manual for each identifier. GPHIGS provides one extension function for each GSE identifier in the extension package.
If GPHIGS is in NRS mode, the effect of this function is different from the effect described in the standard.
In NRS mode, (see OPEN PIPE), the element is not stored in a structure. It is sent to the workstation on which the pipe is opened.
set user function call (ext), set transparency (ext), set z-buffer edge shift (ext), set z-buffer shift (ext), set highlight colour (ext), set antialiasing identifier (ext), set cell array alignment (ext), open structure, open pipe (ext), inquire generalized structure element facilities, inquire list of generalized structure element, inquire current element content, inquire current element type and size