Link assemblies to other objects.
Hierarchy
Assemblies can be linked to objects above or below, in the Gamgi
hierarchy. Pressing the button
Below (the default),
the
Objects menu shows the classes of objects that can be owned
by assemblies: Assembly, Cell, Cluster, Molecule, Group, Plane, Direction,
Atom (the default), Orbital and Text. Pressing the button
Above,
the same menu shows the classes of objects that can own assemblies: Layer
(the default) and Assembly. Assemblies can own other assemblies
(they are recursive objects), so they can be linked above or below
to other assemblies.
Object
Gamgi expects users to identify first the assembly or list of assemblies
and then the object to link. When the
Assembly entry is active
and empty, clicking the mouse over a assembly, on the current layer
(local selection), its identification is transported to the
Assembly
entry. Gamgi is now expecting users to click on a object of the class
currently selected in the
Object menu. This object can be in a
different layer or even in a different window (global selection).
To select a visible object in a different layer, in the same window,
just press the mouse over the object, as if it was in the current
layer. To select objects without visual representation, as layers
and lights, press the mouse over the graphic area in the window,
to create a menu with all the objects of that class in the window,
which can then be selected. To select an object in a different window,
with the mouse, use exactly the same procedure, in that window.
Link
Gamgi suppports only one type of linking mode for Assembly:
Object.
The
Object method links an assembly to a single
Object.
When the
Hierarchy is
Above, the assembly is unlinked
from its current parent and linked to the object. When the assembly
is moved to a different layer, all its bonds to other objects are
automatically removed. When the
Hierarchy is
Below,
the object is unlinked from its current parent and linked to
the assembly.
When the new child previously owned the new parent (a situation made
possible because assemblies can own other assemblies), the new parent
is first linked to the new child parent. An error is issued when the
parent already owned the child object.
After the linking operation, Gamgi always puts on top
the window and layer containing the linked objects.