The first parameter of all these functions is the identifier STRID of the structure to be generated
The following parameters describe the geometry of the object to be generated.
e.g. : TCUBE (STRID, x1,y1,z1, x2,y2,z2) function, where (x1,y1,z1) and (x2,y2,z2) are two 3D points forming a diagonal in the parallelepiped.
All the structures generated by these PHIGURE functions have the following common architecture :
label (0)
add name to set (STRID) /* optional */
label (0)
/* first sub-object */
label (-1)
primitive attribute functions /* optional */
label (-1)
list of PHIGS primitives
/* second sub-object */
label (-2)
primitive attribute functions /* optional */
label (-2)
list of PHIGS primitives
/* nth sub-object */
label (-n)
primitive attribute functions /* optional */
label (-n)
list of PHIGS primitives
label (-999)
Each structure is divided into n sub-objects (n >= 1). The sub-object n° i is marked by a pair of label elements (-i)) (a label is the PHIGS structure element generated by the PLB). A sub-object corresponds to a logical group of primitives. All the primitive attributes specific to the sub-object i are located between the two labels (-i).
By referring to the scope attribute, any attribute specific to a sub-object i, is taken into account by the sub-objects j with j>i, if no other attribute of the same type is specified.
By default, when a PHIGURE structure-building function is called, it starts by erasing the previous structure. This avoids accumulating several layers of primitives. This may be modified by calling the TSEMST function to prevent the automatic erasing of the preceding structure, and/or the systematic insertion of the add set name element.