group
The order in which primitives are displayed in graphic_window.
By default, primitives are displayed in graphic type order:
cell
polygon
prism
instance
compound
vector
lines
arc
circle
ellipse
gtext
node
glabel
polynode
The display order may be customized by inserting primitives into groups, then defining the order in which the groups are displayed. Within each group, primitives are still displayed in graphic type order as described above.
The window.group_order array is a list of group identifiers and specifies the display order, i.e. primitives in group_order[1] are displayed before those in group_order[2] and so on.
The array must contain the all group. If it does not the all group is put at the beginning of the order by the system. This ensures that all primitives which are not in any of the other groups in the order are displayed first. The all group may be put somewhere else in the array if required.
No group may be entered into the order more than once. In such cases, only the first occurrence is used, and other occurrences are removed from the order by the system. If a primitive is a member of two groups and both groups are in the group order, the primitive is displayed when the latter of the two groups is displayed.
When using this facility, primitive additions, deletions and modifications may suffer from slower response since the group order may have to be traversed and redrawn after each change.
New windows have a group order containing just the all group.
The window.group_order array is closely associated with an array of vector layers. Any change to the group order is reflected in the vector layer order, and vice versa. See window.layers and window.vector_layers for more information about window layers.
Identifiers: |
all (group) |
Structures: |