These functions insert or modify a PHIGS attribute specific to a sub-object of a structure produced by PHIGURE. E.g. to modify the line colr ind attribute of sub-object n° i in the structure struct_id, it is necessary to call the following function :
tset_line_colr_ind (struct_id, -i, line_colr)
This function carries out the following operations :
it opens the structure identifier struct_id,
it looks for any pset_line_colr_ind element there may be between the two plabel (-i) elements
if there is one pset_line_colr_ind element, then
it replaces it with the new pset_line_colr_ind (line_colr) element
otherwise
it inserts the pset_line_colr_ind (line_colr) element after the first plabel (-i) element
then it closes the structure
There is a similar function for all the main primitive attributes. Except for the first letter, they have the same name as the PHIGS function which created the element, but they also include the first two parameters struct_id and n° of the label.
These functions provide useful programming shortcuts for modifying existing structures. These are all described in the chapter on "graphics attributes of structures". These functions must be called after the structure has been built.
If the structure is rebuilt following modification by one of these attribute functions, the modification is lost. E.g. :
tcube (struct_id, &p1, &p2); /* creates the structure */
tset_int_colr_ind (struct_id, -1, 3); /* inserts a set_int_colr_ind */attribute in the structure
tcube (struct_id, &p1, &p2); /* rebuilds the structure : the set_int_colr_ind attribute is lost*/
Refer to the description of the function which created the structure in this manual to find out the logical breakdown into sub-objects.
In this manual, if a structure only has one sub-object (true in most cases), no description is given : this means that the structure has a pair of (0) labels then a pair of (-1) labels, followed by the primitives in the structure (there is no other label with a value < -1, except label -999 at the end of the structure).
In other cases, the full description of sub-objects in the structure is given.