Spock allows the user to define subsets of atoms and surfaces and give
those subsets names. Those subsets can later be referenced by the given
name. The command subdef= discussed in §
5.2.7 may be used to create a subset, and the
selection string sub=NAME (§5.3.2) may be used to
select a subset. For vertex subsets, the corresponding commands are
vsubdef and vsub=. Note that in spock, atom and vertex subsets are
entirely separate, and do not share the same name space. You may define
an atom and a vertex subset with the same name, but the vertex subset will
refer only to vertices and the atom subset will refer only to atoms.
Subset definitions are static, in that once defined, a subset remains
constant, even if the values on which the defining expression depend
The subset menu expands on the subset commands and provides a more
convenient user interface for subsetting commands. Up to 28 user-defined
atom subsets may be active at one time. (The upper limit is because
subsets are stored internally as one bit of a 32-bit integer array, and
bits 0 through 3 are reserved for internal use.) Up to 26 surface subsets
may be defined. (Bits 0 through 5 are reserved.) An individual atom or
vertex may belong to any number of subsets. Subsets may also be
referred to by number in a selection string (e.g. bc=0,sub=1).
Subsets are numbered sequentially starting with 1. Again, atom and vertex
subsets are separate, so there is a atom subset numbered 1 and a distinct
vertex subset numbered 1 if they have been created. If you delete a
subset, all following subsets are renumbered so that there are no gaps in
the numbering sequence.
It is also possible to graphically define vertex (surface) subsets via the
``Surface selection'' commands of the ``Graphics Mouse
bindings'' menu, as described in §6.11.3. There are two names
that are reserved for graphically defined vertex subsets,
vsub=MARKED and vsub=FILLED. These names should not be used for
any other user-defined surface subsets.
The menu options to control subsets are similar for atoms and surfaces,
and are described in general terms below:
- Define Define a new subset. Prompts for a subset name and
a selection string (§5.3) of atoms to be included in
the subset. As a safety feature, you can not re-define a subset
from this option.
- Redefine Replace the definition of a subset with a new
selection string. Spock will prompt for the old subset and a
new selection string to use for that subset name.
- Broaden Add some new atoms into a subset. Spock prompts
for a new selection string and a subset name. The selected atoms
are added to the definition of the subset.
- Narrow Restrict a subset by a new selection string. Only
atoms in both the original subset and the new selection string are
included in the new subset.
- Delete Remove a subset from memory.
- Set subset origin This sub-menu allows the user to set
the origin of rotation for a particular subset. ``To atom
selection'' prompts for a selection string of atoms. The
center-of-mass of these atoms is then used for the subset's origin
of rotation. ``To center of subset'' sets the subset's center of
rotation to its center of mass. ``To coordinates'' prompts for
the x,y,z coordinates of the point to be used as the subset's
center of rotation, and ``To world center'' sets the subset's
center of rotation to be the center of mass of all defined atoms.
- Attach motion This submenu specifies to which group of
objects mouse movement or dial changes (§6.11.5)
should be attached. ``World'', the default, means movement
should apply to all objects. Other standard options are ``TOR'',
and ``FBRT'' described in §6.7.13.
Finally, all currently defined atom subsets are listed. If a
subset, TOR or FBRT is selected, motion is restricted to that
subset (or rotation about the TOR bond/FBRT atom). Note that the
internal coordinates of a subset are updated as a subset is
rotated, not just the viewing projection, so that if you perform
a subset rotation and then save a PDB file, or list the
coordinates, they will be changed from the original coordinates.
Subset rotations may be ``undone'' by choosing the ``Undo subset
rotation'' option. Note that for efficiency, not all objects are
re-built updated with every redraw. Bonds and circle de atoms
will always reflect the current coordinates, however. To update
the other objects, toggle them off and on again in the Display
menu. Note that pressing and holding shift, alt, or control
before any mouse buttons, will temporarily re-attach the mouse to
the world view, making it easier to switch back and forth between
manipulating a subset and the global view.
- Lock subset rotation This option makes resets the subset
undo matrix to the identity matrix, making the subset rotation
permanent. Subsequent invocations of ``Undo subset rotation''
will revert to this point.
- Undo subset rotation This option removes the all
rotations applied to a subset, since the last time the rotations
were locked. Performing rotations on overlapping subsets (subsets
which share atoms with other subsets) is allowed, but undo cannot
be fully supported in this case. For an atom which is shared
between subsets, if more than one subset which contains that atom
has been rotated without an intervening call to undo, undo will
have unpredictable results.
- Update bonds only/Update all objects These options
control which objects are updated when motion is attached to a
subset. The default is for only the bonds to be updated, which
reasonably fast. However, users can choose that all objects be
updated when moving subsets, which can be slow depending on which
objects are currently turned on in the Display menu. Note that
surfaces can only be rebuilt manually.
Tue Sep 14 16:44:48 CDT 1999