GAMGI Interfaces: Assembly Link

# Assembly Link

- Object

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.

### Method

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.
Home