This chapter is supposed to describe the usage of the graphics possibilities
of WHAT IF on all hardware platforms. We have done our utmost best to keep
all options and facilities identical on all types of hardware. However,
there are some severe differences in hardware that make that some options
can not be identical between the several machines.
In WHAT IF most of the graphics work can be
done from the text window. The next paragraphs
describes how to use the graphics window menu, keyboard and mouse. The other
graphics options, that are activated from the text window, are
described in the second part of this chapter.
WHAT IF uses the mouse for all interactions with the graphics window.
In the past dials could be used, but since I do not have a dial
box available, I decided to eliminate this possibility.
Since a mouse has only three keys, the following has been done:
Manipulations of the world view:
Mouse motion What happens at the screen
LEFT mouse button horizontal motion (L-H) = rotation around Y
LEFT mouse button vertical motion (L-V) = rotation around X
MIDDLE mouse button horizontal motion (M-H) = translation along X
MIDDLE mouse button vertical motion (M-V) = translation along Y
RIGHT mouse button horizontal motion (R-H) = scaling
RIGHT mouse button vertical motion (R-V) = slabbing
Combinations:
LEFT + MIDDLE horizontal motion (L+M-H) = rotation around Z
LEFT + MIDDLE vertical motion (L+M-V) = translation along Z
Manipulations of FBRT, MOVE or MOVITM objects:
Mouse motion What happens at the screen
LEFT + RIGHT horizontal motion (L+R-H) = object rotation Y
LEFT + RIGHT vertical motion (L+R-V) = object rotation X
MIDDLE + RIGHT horizontal motion (M+R-H) = object translation X
MIDDLE + RIGHT vertical motion (M+R-V) = object translation Y
ALL THREE horizontal motion (L+M+R-H) = object rotation Z
ALL THREE vertical motion (L+M+R-V) = object translation Z
Additionally, the left and the right mouse button both can be used for picking.
The options in the right column at the screen are pickable.
There are several combined pick options. E.g. Pick YES, and you can only pick
alpha carbons and no other atoms. Pick YES and an alpha carbon twice, and
phi, psi and omega will be put at the bonds around which they are defined.
There are a few more of thes trics. You will discover them one day.
The following menu items can be picked in the right column at the screen:
This menu item allows escape from activated options. It is also a
general way to escape from accidentally started procedures.
NOID stands for NO IDentifier. Picking this item once will remove non-atomic
labels (e.g. distances) and labels in database objects or two dimensional plots.
Picking it twice in a row will also remove all atom
labels that were generated by picking atoms.
This menu item initializes all MOL-items that were generated in an
automatic fashion (e.g. lines to indicate distances, NEIM objects etc.).
In case you hit .NO
immediately before .INIT all MOL-objects will be removed; this is equivalent
to typing INIGRA in the graphics window, or in the text window in the graphics
menu (you will be asked if you really want to delete all MOL-items before it
happens).
NEIM stands for NEIghbours in the Model. After picking NEIM you will be asked to
pick a residue. The picked
residue plus all its direct neighbours will be put in the working model.
In stead of a residue, you can also pick a box in a contact plot, a cross in
a phi-psi plot, a peak in a B-factor plot etc.
Pick NO followed by NEIM to get rid of the working model.
YES is generally used to accept new positions in FBRT, TORS, etc options.
YES will alter the modus of several other picable menu options.
NO is used to reject new positions in FBRT, TORS, etc options. The moved
objects are placed back at their old positions. Also .NO before several
other options gives them a different (mostly opposite) meaning.
CONT stands for Center Of Next Transformation.
This menu item will prompt you to pick something. It then centers around
the picked object. CONT works on atoms, reflections, gridpoints, contact squares,
phi-psi plots, B-factor plots etc.
LINE asks you to pick two atoms. It then draws a line between those two
atoms. (The MOL-item for this line is put in MOL-object zero).
FBRT stands for Foreground Background Rotate and Translate.
Will prompt you in the text window for a residue range. The
residues given will be put in the FBRT object and they can be
translated and rotated with respect to the rest of the picture. (See usage
of the mouse described above).
If the USESYM option has been enabled, FBRT will display
symmetry related molecules as well. All symmetry transformations
known to WHAT IF are used for this, so you better make sure
that they are a reasonable set... See SYMSPG and SYMNEA for
some suggestions.
DIST will prompt you for two atoms (to be picked) and it will show you the
distance between these two atoms. If you move an atom (at the screen or in
the soup) that has been used in a DIST operation, the line between the atoms
and the distance will continuously be updated.
ANGL will first prompt you for the middle atom of three atoms. Thereafter you
will be prompted for the other two atoms. (Also to be picked). It will
then calculate the angle over the first picked atom.
TANG (Torsion Angle) Will prompt you for four atoms to
be picked. Call these atoms A, B,
C and D. It will then give you the angle needed to rotate the plane through
A, B and C onto the plane through B, C and D. Or in other words the torsion
angle around the bond B-C will be calculated.
NAYB will prompt you for an atom. It will then draw lines from this atom
to all neighbouring atoms. Neighbouring atoms are defined as being closer
than the sum of their Van der Waals radii minus a small value. The
default for this value is 0.25A. Too short distances
are represented by red lines. Close contacts are green, Longer distances blue.
The numbers indicate the distance between the Van der Waals surfaces.
If .NAYB is preceded by .NO the created lines and and distances are removed
from the screen.
NAYB works slightly different from the BUMPS option in the ANACON menu.
BUMPS skips short distances within the same residue, and has special code
for special cases like S-S bonds, etc. NAYB shows all short distances, and
has no special code for any special kind of contact.
MOVE will ask you to pick an atom. This atom will be marked with a cross,
and the mouse can be used to move cross. Pick YES to make the new position
final. Pick NO to put the atom back at the old position.
REFI will activate the REFI (structure regularization) option in the REFINE menu.
The text window will pop up, and you are prompted for the residue range. This
pickable option will be replaced soon.
TORS will activate the interactive amino acid side chain torsion angle
manipulation option. You will be prompted to pick an atom. The residue
in which this atom resides will be used. The menu changes, and you can use the
pickable boxes TOR1 till TOR4 to rotate the torsion angles in steps of 10
degrees. Pick NO to invert the rotation direction. Pick YES to finalize a
position. Pick WAIT to reset the residue to the situation before TORS.
These four menu items are actually the view memories.
The first time you then hit one of M1 - M4, the
current view will be saved for future recall.
A view memory is cleared by first picking NO and then that M* command.
Pick YES folowed by M1 - M4 to recall an old view.
This menu item starts/stops the display rocking
about the vertical axis.
This menu item toggles stereo on/off. The configuration file determines
whether you get full screen stereo or side-by-side stereo.
SHEL will spawn a subprocess. Type exit in the subprocess to terminate it.
This menu item passes program control from the graphics window to
the text window.
RSET resets translation and rotation, and, if picked twice, scaling.
The >> and << buttons will scale the molecule(s) with a factor of 1.11111
and 0.9 respectively.
MOV+ can be used in movie options to go to the next frame;
MOV- goes back to the previous frame.
MOV- can be used in movie options to go to the previous frame;
MOV+ goes back to the next frame.
>VEL, <VEL, >ANG, <ANG can be used to change the rocking speed and the rocking
angle.
>VEL, <VEL, >ANG, <ANG can be used to change the rocking speed and the rocking
angle.
SLAB can be used to narrow the slab (=clipping planes in Z direction). Pick NO
followed by SLAB to widen the slab again.
SPHR activates the so-called follow-me sphere (see below).
CHAR should be picked if on a SG VGX machine the characters collaps (this is a
work-around
to fix an SGI bug. Dont use it on other machines because it makes the characters
less readable, and much slower to draw.
HELP can be used to toggle the help mode on/off. With the HELP on,
every next pick will give help about that item rather than executing it.
Click HELP again to resume normal operation of WHAT IF.
WHAT IF displays three bars of pickable buttons at the bottom of the screen.
MENU controls MENU and viewport display. (initially ON)
STATUS toggles little box that shows last atom picked etc (initially OFF)
SOLID1 controls visibility of first solid object (initially ON)
SOLID2 controls visibility of second solid object (initially ON)
SOLID3 controls visibility of third solid object (initially ON)
SOLID4 controls visibility of fourth solid object (initially ON)
X 90 rotates view 90 degrees around X-axis. (see below)
Y 90 rotates view 90 degrees around Y-axis. (see below)
Z 90 rotates view 90 degrees around Z-axis. (see below)
DIRECT Toggles direct mode on/off (initially OFF)
not used
GRID displays a photo camera focusing grid. (initially OFF)
not used
not used
not used
ROT+-6 Toggles the view 6 degrees back and forth for stere photos
SEQUNC Toggles the sequence bar on/off (initially OFF)
not used
not used
not used
not used
-> Used to do a right shift on the pulldown menus
<- Used to do a left shift on the pulldown menus
not used
MOL0 controls the display of MOL object 0 (initially ON)
MOL1 controls the display of MOL object 1 (initially ON)
MOL2 controls the display of MOL object 2 (initially ON)
MOL3 controls the display of MOL object 3 (initially ON)
MOL4 controls the display of MOL object 4 (initially ON)
MOL5 controls the display of MOL object 5 (initially ON)
MOL6 controls the display of MOL object 6 (initially ON)
MOL7 controls the display of MOL object 7 (initially ON)
MOL8 controls the display of MOL object 8 (initially ON)
MODEL controls the display the working model (initially ON)
MOVIE controls the display the movie frames (initially ON)
LABEL controls the display of labels (initially ON)
The buttons to rotate 90 degrees around X, Y, or Z are always yellow.
They are different from the others in that they can not be undone by
clicking again, or clicking NO first. To undo a rotation, just do it three
times more (4*90 degrees is 360 degrees which often is rather similar to doing
nothing in the first place).
The second bar from the top holds the names of WHAT IF menus. Pick one of them
and a pulldown menu with most of the commands that you expect in this menu
will apear. Pick an option in this pulldown menu, and either the option is
directly executed, or a terminal window will
pop up. In this window you are directly in the option that you picked. You do
not have to navigate through the WHAT IF menu maze first. The last line you
see in this pop-up terminal window is always: Hit RETURN to continue.
If you do hit return, the terminal window disapears again. Pick the pull down
menu name (the top button that now is green) again, or pick any spot at the
screen where there is nothing.
If you pick HELP in right most column the HELP option gets activated.
If the HELP option is active and you then pick the
the pulldown menu box (that is green now),
you will get SHORT help on all the commands in this menu. If the HELP option
is activated, and you pick a box in the pulldown menu, the terminal window
will pop up, and more extensive help about this item will be displayed.
Remember that the HELP option stays active till you pick HELP again.
There are many pulldown menus, and it often happens that you want to use
commands from several menus in a row. To avoid excessive picking, a privat
pulldown menu has been added. This is the second menu from the right.
If you have a file called MY_MENU.DAT with (at most 30) commands in it, then the
privat menu will hold these commands. Otherwise you get the default privat
menu.
There are many more pulldown menus than can be visible at the same time.
At this moment (1-3-92) there are 33 pulldown menus, but another 30 will be
added this year. The commands --> and <-- in the second button bar at the
bottom of the screen can be used to shift through the pulldown menus.
If you pick RESET in the second button bar at the bottom of the screen then
ADD will be de-activated (if it was active), and the pulldown menus will be
brought back to their default situation.
WHAT IF has several menu's from which graphical commands can be given.
Atom colouring is not directly a graphics command, but strongly related
to it, and it is done from the COLOUR menu. Two dimensional graphics options
like
phi-psi plots, etc. are executed from the GRATWO menu (see
chapter on two dimensional graphics). Graphics
enhancement options like the creation of arrows, or helix cylinders etc. are
executed from the GRAEXT menu (see chapter on graphics enhancement).
All other normal graphics options
are executed from the GRAFIC menu (GRAPHIC instead of GRAFIC will work too
to get there).
Very fancy graphics like ribbon plots etc., is done from the molecular
pornography menu (PORNO)
WHAT IF normally does not directly update the screen if you change something
like e.g. atom colours. Instead, you are supposed to delete the old MOL-item,
and create a new one. The exceptions is the
DIRECT-mode option. The DIRECT-mode is described below.
When interactive display mode is activated on the X11 version of
WHAT IF, WHAT IF will look at some environment variables to decide
on some aspects of the display. These variables are documented below.
,br
To set these options, depending on your 'shell', you can use
either the command
setenv WIFXXX YYY
or
WIFXXX=YYY; export WIFXXX
Here you should substitute the name of the variable on the XXX,
and the value you want to use on the YYY. These commands need
to be executed before you start WHAT IF. It might be an idea to
put them in your shell startup script (.login in your home
directory?).
The option WIFSIZE is not a WHAT IF command, but an environment
variable. It can be set to any number between 0.1 and 1.0. This
number is used as the fraction of the screen size that the WHAT IF
window should occupy. If the variable is not set, or is set to
an invalid value, the default of 0.8 is used.
The option WIFLW is not a WHAT IF command, but an environment
variable. It can be set to any integer number between 0 and 10
(with 0 and 10 included). The number is used as the width of
the lines in the WHAT IF objects. The default is 0, and unless
you have very good reasons to change it, you better leave it that
way: any other value slows down the display by at least 1 order of
magnitude!!! For displaying on an overhead projector, it might be
useful. With thick lines on the screen you might notice that the
Z-buffer algorithm used is pretty coarse; what is drawn in front
of what is not very well distinguished.
The WHAT IF X11 driver has options for perspective view and
depth cueing. See the MODEF, MODES, MODEC and MODEP commands.
The magical command:
SETWIF 805 X
in which X stands for an index into the colour map, allows you
to change the background colour.
X is 0 is the default, black. Normally, 1 is red, 2 is green, 7 or
15 is white. You can also try exotic numbers, just try it. At worst
WHAT IF will crash. On SG systems you can always issue the UNIX command
makemap to get a normal colour map back.
The command DIRECT can be used to work with WHAT IF without MOL-objects and
MOL-items. In DIRECT-mode all simple graphics commands (like displaying
residues, alpha carbons, etc., all colouring options, superposition options,
and a few more other options) will be executed directly. That means that if
you ask for colouring by B-factor, than the whole range that you colour
will get its colour changed in the soup, but those atoms that are visible
at the screen will also immediately get their colour changed at the screen.
The DIRECT-mode
residues sit under the button labeled MODEL in the menu at the bottom of
the screen.
Although implemented, it seems not a good idea to use this option on PCs
unless you are not really (or is it really not?) in a hurry...
The command UNDISP will cause WHAT IF to prompt you for a residue range.
Those residues in this range that are at that moment visible as DIRECT-mode
residues will be removed from the screen. The UNDISP command does
not do anything if you are not in DIRECT-mode.
If this sounds all very complicated, then don`t read it, and just try it.
It is rather idiot proof, I often work with it...
The most important option of WHAT IF (GO) has been
described in the previous paragraph, and in chapter 3. GO is so important
that although strickly of graphical nature, it is a general command.
The command GO passes control to the graphics window. Most other
options in the GRAFIC menu send commands to the graphics window, but leave
program
control at the text window. In order to work with the
graphics options one should understand this principle very well.
Pick the green box labelled CHAT to undo GO, and get back in the
text window.
The graphics menu contains several options to manipulate the view, and many
options to manipulate the viewable objects. Also some options to enhance
the appeal of the graphics (especially nice for making slides) are present.
Most graphics enhancement options however, are stored in the GRAEXT menu. The
typical two-dimensional graphics applications are stored in the GRATWO menu.
The command INIGRA removes all MOL-objects and all MOL-items
in them from the screen.
The comand INIOBJ will cause WHAT IF to prompt you for the number of a MOL-object.
Give a number between 1 and 8. The MOL-object will be removed from the screen.
If you run WHAT IF using the topology file with protons, protons
will be displayed by all options that display parts of the soup.
The commands HYDON and HYDOFF can be used to toggle this on/off.
The command HYDON will cause WHAT IF to always display all hydrogens
that are present in the soup. This applies to all options in the
GRAFIC menu, and most other display options. The graphical representation
of database hits never has hydrogens.
The command HYDOFF will cause WHAT IF to never display the hydrogens
that are present in the soup. This applies to all options in the
GRAFIC menu, and most other display options. The graphical representation
of database hits never has hydrogens.
This command causes WHAT IF to prompt you for a MOL-object number, and a
MOL-item name. It will then fill this MOL-item with all residues, drugs
and water molecules
presently in the soup.
This command causes WHAT IF to prompt you for a MOL-object number, and a
MOL-item name. It will then fill this MOL-item with all residues
(protein/DNA/RNA) presently in the soup.
This option causes WHAT IF to keep
prompting for residue ranges untill you give zero as answer. It will then fill
a MOL-item with the requested zones of residues.
Drugs and water molecules may be part of the range.
The command GRACA works just like the command ZONES. The difference being that
GRACA will only send the alpha carbons to the screen. This option works
of course only as advertised on amino acids; in case you use it for nucleic
acids a P to P trace will be drawn. (This command was formerly called CA.
Just CA instead of GRACA still works).
The command GRABB works just like the command GRACA. The difference being that
GRABB will send the all back bone atoms and the main chain oxygens, and if
present the beta carbons to the screen. This option works
of course only on amino acids.(This command was formerly called BB. Just
BB still works).
The command GRASCH works just like the command BB. The difference is that GRASCH
only shows the side chains, starting from the alpha carbon. So the combination
of GRABB and GRASCH gives you the whole residue, but with the C-alpha - C-beta
bond drawn twice (but you wont see that...). (This command was
formerly called SS. Just SS still works).
The command CASCH combines GRABB and GRASCH. It draws for the range you
give only the alpha carbon trace and the sidechains.
The command SPHERE will cause WHAT IF to prompt you for a residue and for
a radius. This central residue together with all other residues that share
at least one atom pair with a contact distance less than this radius with
the central one, will be
put in a MOL-item. The screen will automatically be centered at the
alpha carbon of the central residue. The contact distance is the distance
between the Van der Waals' surfaces.
The command SPHZON will cause WHAT IF to prompt you for a central residue,
for a radius, and for a residue range. The central residue together with all
other residues that have
their alpha carbon within the give radius from the central one and that fall
within the given range, will be
put in a MOL-item.
The screen will automatically be centered at the
alpha carbon of the central residue.
Be aware that the sphere of residues around the central one is here
calculated differently from the SPHERE option.
SPLINE will cause WHAT IF to prompt you for a residue range.
After that, the helix-sheet-turn determination
option will be run if it has not yet been done. Thereafter you will be asked
if you want to play with the parameters, some of these parameters
are self explanatory, others you should experiment with. Be aware that if you
choose the parameters too far from their default values,
WHAT IF migth express its anger in an unpleasant manner.
At the end, WHAT IF will create an arrow/cylinder/smooth ribbon for this range.
This option is not yet completely ready, in all its details.
The option GRAACC can be used to visualize accessible surfaces.
You will be prompted for
the residue range. The last used environment will be used (see INIENV) in the
ACCESS menu.
Be aware that in GRAACC uses united atoms, and thus, protons will not
be explicitly visible.
The option GRAVDD can be used to visualize Van der Waals surfaces.
You will be prompted for
the residue range. The last used environment will be used. See INIENV in the
ACCESS menu if you want to use another environment.
Be aware that in GRAVDD uses united atoms, and thus, protons will not
be explicitly visible.
This command will cause WHAT IF to prompt you for a residue. It will then
use the water position database to generate all potential water positions
around that residue, and put those waters out at the screen. The rest of the
soup is not (yet) considered in this case; so potential waters can easily
end up inside other atoms.
You will be asked if you want to keep these waters, If you say yes, a group
of waters, containing the waters just generated, will be added to the soup.
The command GRACLU will cause WHAT IF to prompt you for a cluster. It will
then put this cluster in a MOL-item.
The command GRASBR will cause WHAT IF to search for all salt-bridges present
in all proteins in your soup. A salt-bridge is defined as a basic nitrogen
and an acidic oxygen being 'near' each other. 'Near' has a default of 5.0
Angstrom between their atomic centers,
but can be changed because WHAT IF prompts you for it. You will also be
prompted for a decission on
histidines. They can either be considerd as basic, or being left out of the
determination. You will first be promted for the range of amino acids.
The salt-bridges will be shown as dashed lines at the graphics window.
Several bonds in proteins have a double bond character, eg aromatic rings,
back bone C=O bond, etc. WHAT IF normally draws these as a single bond.
The command DBLBND will toggle between single bond drawing mode and
double bond drawing mode. Be aware that this is only a visualization, and
that no chemical calculations are used to determine the character of
the bonds. In DIRECT-mode, all double bonds visible at the screen will
directly be changed from single to double lines.
The command DSHBND will cause WHAT IF to draw every future atomic bond as
a dashed line. In direct mode this is not a very usefull option as it will
directly convert all bonds into dashed lines.
The command NOMODL will remove the working model from the graphics window
without
loosing pickability of atoms. The working model is attached to the pickable
button labeled 'model' at the bottom of the screen. For example, in case
of DIRECT mode, all residues that are drawn are put in the working model.
The command UNDISP will cause WHAT IF to prompt you for a residue range.
Thos residues in this range that are at that moment visible as DIRECT-mode
residues will be removed from the screen. The command UNDISP is only
available in case you are in DIRECT mode.
Plotting is done by WHAT IF from the PLOTIT menu.
The command ACON will prompt you for a residue. The coordinates of the
alpha carbon of this residue will now become the center of the graphics window,
regardless whether this amino acid is visible at the screen or not.
If you give a non-amino acid, there will of course be no alpha carbon. In those
cases the first or second atom from the selected drug (or water) will be
used for the centering. For centering on arbitrary coordinates see CENXYZ.
The command CENTER will calculate the center of gravity of all residues in
the soup. This point will now become the center of the graphics window.
For centering on arbitrary coordinates see CENXYZ.
The command OPTVIE will alter the coordinates in the soup such that a next
SHOTOT command gives an optimal view. That is, the longest axis of the
molecule will lay horizontally (because the horizontal axis of the screen
is the longest one), and the shortest axis of the molecule will be
perpendicular to the viewer. Be aware that after this option you can
no longer use symmetry (see SYMTRY menu) related options. Also, previously
generated MOL-items will no longer be pickable.
The command SETVIE will allow you to manually enter the viewing scale and slab
values. Normal values are 0.5 for the scale and 20.0 for the slab. See also
SHOVIE.
The command SHOVIE will show you the present scale and slab parameters.
See also SETVIE.
The command CROSS toggles between diverging and cross-eyed stereo. This
option can on several types of hardware be replaced by the F4 function key
(when in graphics mode, thus not when the text window is in front of the
graphics window).
Just try it.
The command TOGGL2 will cause WHAT IF to prompt you for two MOL-objects.
If you thereafter type GO, these two MOL-objects will be shown alternatingly.
The command LINEWI will ask you for a linewidth parameter. The default is 1.
Allowed values are 1 till 5. This option only works on SG machines. I dont
like this option. LINEWI does not change the plotted linewidth in plot options.
The command ROTY+6 changes the view by adding a rotation of + 6 degrees
around the Y axis. Use ROTY-6 to undo this.
This option is nice if you want to make stereo photographs.
The command ROTY-6 changes the view by adding a rotation of - 6 degrees
around the Y axis. Use ROTY+6 to undo this.
This option is nice if you want to make stereo photographs.
If you only want to rotate the molecule around the X or Y axis, you
have a problem because it is virtually impossible to move the
mouse perfectly horizontal or vertical. If you move the mouse
horizontally, but a very little bit in the vertical direction at
the same time, a large rotation around the Y-axis is combined
with a small rotation around the X-axis.
The commands XONLY, YONLY and NOONLY can help you overcome this
problem.
After the XONLY command any rotation around the Y-axis becomes
impossible.
If you only want to rotate the molecule around the X or Y axis, you
have a problem because it is virtually impossible to move the
mouse perfectly horizontal or vertical. If you move the mouse
horizontally, but a very little bit in the vertical direction at
the same time, a large rotation around the Y-axis is combined
with a small rotation around the X-axis.
The commands XONLY, YONLY and NOONLY can help you overcome this
problem.
After the YONLY command any rotation around the X-axis becomes
impossible.
Just like XONLY and YONLY restrict rotations around X or Y axis only,
ZONLY will restrict future rotations about the Z axis only. As it
is not possible to accidentally rotate around X or Y while rotating
around Z, this is probably not a very important option.
The command NOONLY cancels the effects of the XONLY and the YONLY
commands (see above).
Not all commands are immediately active in the GRAPHIC menu. By typing
MORE, more commands will be activated.