CCL Home Page
Up Directory CCL release.txt
RasMol v2.6 Release Notes

Roger Sayle
Biomolecular Structure Department,
Glaxo Wellcome Research & Development,
Stevenage, Hertforshire, U.K.

September 1995.

[1] INTRODUCTION
This document describes the many new features and enhancements 
introduced in RasMol v2.6.  A more complete description of the 
functionality of the RasMol molecular graphics package is given
in the RasMol user manual.  This documentation is intended for 
existing users of RasMol v2.5, and describes only the changes made 
since the last release in October 1994.

[2] RENDERING

[2.1] Display of Protein Cartoons
The ribbons representation in RasMol has been extended to allow 
the display of Richardson (MolScript) style protein cartoons.  
The are currently implemented as thick (deep) ribbons.  The easiest 
way to obtain a cartoon representation of a protein is to use 
the new 'cartoon' option on the 'display' menu.  The "cartoon 
" or "cartoons " command on the RasMol command 
line represents the currently selected residues as a deep ribbon 
with width specified by the command's argument.  Using the command 
"cartoons" without a parameter the ribbons width is taken from 
the protein's secondary structure, as described in the ribbons 
command.  By default, the C-terminus of beta-sheets are displayed 
as arrow heads.  This may be enabled and disabled using the "set 
cartoons " command.  The depth of the cartoon may be 
adjusted using the "set cartoons " command.  The "set 
cartoons" command without any parameters returns these two options 
to their default values.

[2.2] Side-by-Side Stereo Display
RasMol now provides side-by-side stereo display of images.  Stereo 
viewing of a molecule may be turned on (and off) either by selecting 
"Stereo" from the "Options" menu, or by typing the command "stereo 
on".  From the RasMol command line.  The separation angle between 
the two views may be adjusted with the "set stereo [-]" 
command, where positive values result in 'relaxed' viewing and 
negative values in 'crossed' viewing.  Currently, stereo viewing 
is not supported in vector PostScript output files.

[2.3] Display of Double and Triple Bonds
RasMol is now able to display double and triple bonds as multiple 
lines or cylinders.  Currently bond orders are only read from 
MDL Mol files, Sybyl Mol2 format files, Tripos Alchemy format 
files and suitable Brookhaven PDB files.  Double (and triple) 
bonds are specified in PDB files by specifying a given bond twice 
(and three times) in CONNECT records.  The display of bond orders 
is controlled by the RasMol command "set bonds ".   The 
command "set bonds on" enables the display of bond order, and 
the commands "set bonds off" and "set bonds off" disable them.

[2.4] Smooth alpha-carbon Trace
The semantics of the RasMol "trace" command have been changed.  
In versions of RasMol prior to version 2.6, the "trace" command 
was synonymous with the RasMol "backbone" command, drawing a straight 
line or cylinder between consecutive alpha carbon positions.  
In version 2.6, "trace" now displays a smooth spline between 
consecutive alpha carbon positions.  This spline does not pass 
exactly through the alpha carbon position of each residue, but 
follows the same path as "ribbons", "strands" and "cartoons". 
Note that each residue may be displayed as either a ribbon, strands, 
cartoon or trace, and enabling one of these representation disables
the others.  However, a residue may be displayed simultaneously 
as backbone and one of the above representations [though this may 
change in future versions of RasMol].

[2.5]  Distance Monitors
RasMol now allows the display of 'distance monitors'.  A distance 
monitor is a dashed (dotted) line between an arbitrary pair of 
atoms, optionally labelled by the distance between them.  The 
RasMol command "monitor  " adds such a distance 
monitor between the two atoms specified by the atom serial numbers 
given as parameters.  Distance monitors are turned off with the 
command "monitors off".  By default, monitors display the distance 
between its two end points as a label at the centre of the monitor.  
These distance labels may be turned off with the command "set 
monitors off", and re-enabled with the command "set monitors on".  
Like most other representations the colour of a monitor is taken 
from the colour of its end points unless specified by the "colour 
monitors" command.  Distance monitors may also be added to a molecule 
using a mouse as described in section [3.5]

[2.6] Dashed Wireframe, Backbone and Strands
Wireframe, backbone and strands representations may now be displayed 
with dashed (dotted) lines.  This is enabled by allowing the "dash" 
or "dashes" parameters to the "wireframe", "backbone" and "strands" 
commands.

[2.7]  Single Letter Amino Acid Labels
The format specifier "%m" has been added to strings in the RasMol 
"label" command.  This allows amino acid residues to be labelled 
with a single letter amino acid code, rather than the three letter 
amino acid code "%n".  For example, try the commands "select alpha" 
and "label "%m%r"".

[2.8] Axes Labels
RasMol now displays the characters X, Y and Z on the cartesian axes 
displayed with the command "set axes on".  These letters label the 
positive direction of the respective axes.


[3]  USER INTERACTION

[3.1]  Enabling/Disabling Atom Picking.
In versions of RasMol prior to version 2.6, clicking on an atom 
with the mouse resulted in it identification and the display of it 
residue name, residue number, atom name, atom serial number and 
chain in the command window.  This behaviour may be disabled with 
the command "set picking none" and restored with the command "set 
picking ident".  Disabling picking is useful when executing the 
"pause" command in RasMol scripts as it prevents the display of 
spurious message on the command line whist the script is suspended.

[3.2] Measuring Distances, Angles and Torsions.
In addition to enabling and disabling picking, RasMol version 2.6
allows the interactive measurement of distances, angles and torsions. 
This functionality is achieved using the commands "set picking 
distance", "set picking angle" and "set picking torsion" respectively.   
In these modes, clicking on an atom results in it being identified 
on the rasmol command line.  In addition every atom picked increments 
a modulo counter such that in distance mode, every second atom 
displays the distance between this atom and the previous one. 
In angle mode, every third atom displays the angle between the 
previous three atoms and in torsion mode every fourth atom displays 
the torsion between the last four atoms.  By holding down the shift 
key while picking an atom, this modulo counter is not incremented 
and allows, for example, the distances of consecutive atoms from a 
fixed atom to be displayed.

[3.3]  Labelling Atoms with the Mouse.
The mouse may also be used to toggle the display of an atom label on 
a given atom.  The RasMol command "set picking label" removes a label
from a picked atom if it already has one, or displays a concise label
at that atom position otherwise.

[3.5]  Adding Distance Monitors with the Mouse.
RasMol version 2.6 also allows the interactive addition of distance 
monitors to an image using the "set picking monitor" command.  The 
behaviour of the mouse when picking in monitor mode is similar to that
in distance mode described above.  The shift key may be used to form
distance monitors between a fixed atom and several consecutive positions.
A distance monitor may also be removed (toggled) by selecting the 
appropriate pair of atom end points a second time (much like labelling
with the mouse acts as a toggle).

[3.4]  Centering Rotation with the Mouse.
A molecule may also be centered on a specified atom position using the 
RasMol command "set picking centre" or "set picking center".  In this
mode, picking an atom causes all futher rotations to be about that point.


[4]  COMMAND INTERFACE

[4.1] Refresh Command
The command "refresh" has been added to the RasMol command language 
to force the display of the current image.  This is performed 
automatically on the command line.  However, the semantics of a RasMol 
script file are that all of the commands are executed sequentially 
and the image on the screen is only updated after all commands have 
been executed.  The new "refresh" command  allows a script to display 
intermediate steps in the rendering process.  One possible application 
of this is in the production of animations, however the delay between 
successive frames is dependent upon the performance of the machine 
running RasMol.

[4.2]  Pause/Wait Command
Potentially one of the most useful additions to the RasMol command 
language is the "pause" (synonymously "wait") command.  This command 
may be executed in RasMol script files to suspend the sequential 
execution of commands and allow the user to examine the current image.  
When RasMol executes a "pause" command in a script file, it suspends 
execution of the rest of the file, refreshes the image on the screen 
and allows the manipulation of the image using the mouse and scroll 
bars.  Once a key is pressed, control returns to the script file at 
the line following the "pause" command.  While a script is suspended 
the molecule may be rotated, translated, scaled, slabbed and picked as 
normal, but all menu commands are disabled.  Currently there is no 
way for the user to interrupt the execution of a script, for example 
by typing control-C or pressing escape, though this may be added in 
future versions of RasMol.   The "pause" can probably be used most 
effectively with "echo" commands in education pre-scripted 
demonstrations, where a description of the current image is presented 
to the user/student.  Typically the command before a "pause" should 
be "echo Press any key to continue".

[4.3]  Controlling Save/Write in Scripts
One of the unpopular changes implemented in RasMol between versions 
2.4 and 2.5 was the disabling of save and write commands from 
within RasMol script files.  With the increasing use of RasMol in 
conjunction with the Internet, the ability to generate/overwrite 
files was regarded as a security hazards.  Many sites now exchange 
RasMol script files that could potentially overwrite system files
and alter acess restrictions.  To prevent such problems, RasMol v2.5 
disallowed the use of save and write commands within scripts.  
However, this has prevented the use of script files in generating 
animated sequences of images.  The proposed solution to this problem 
is the addition of the RasMol "set write " command.  This 
command enables (and disables) the use of "save" and "write" in 
scripts, but may only be executed from the command line.  By default, 
this value is "false", prohibiting the generation of files in any 
scripts executed at start-up (such as those launched from a WWW 
browser such as Mosaic or NetScape).  However, animators may start 
up RasMol interactively, type "set write on" and then execute a 
script to generate each frame using the "source" command.

[4.4]  Storing Atom Co-ordinates in Scripts
Another extension to RasMol to allow better integration with WWW 
browsers is the "inline" parameter to the "load" command.  A "load" 
command executed inside a script file may now specify the keyword 
"inline" instead of a conventional filename.  This option specifies 
that the co-ordinates of the molecule to load are stored in the same 
file as the currently executing commands.  Typically this is used in 
the command "load pdb inline", which is followed by a number of 
RasMol commands terminated by the command "exit".  The "exit" command 
terminates execution of the current script and returns control to the 
command line (or the calling script).  This means any lines following 
"exit" are never interpreted by RasMol.  These may be used to store 
atomic co-ordinates in PDB file format.  Because in Brookhaven PDB 
file format, any line not recognised by the parser should be ignored, 
only lines beginning ATOM, HETATM, TER, etc. are examined.  Hence a 
file may be both a RasMol script and a PDB file simultaneously.  This 
allows both co-ordinate and representation data to be transmitted as 
a single file.  One possible use is a standard RasMol script prefix 
that may be concatenated with an appropriate PDB file on-the-fly.

[4.5]  Atom Expression support for NMR Models
The syntax of RasMol atom expressions has now been extended to allow 
the selection of individual molecule conformations if present in an 
NMR file (as desribed in section [5.2]).  The simplest form of the 
atom expression is the syntax "::25", to select model 25 from the 
molecule.  This is equivalent to the atom expression "model = 25", 
as the keyword "model" may now be used in comparison expressions.  
The most general form of atom expression is now "CYS32:A:25.SG" which 
denotes the gamma sulphur of residue cysteine-32 in chain A of model 25.

[4.6]  Improved Atom Expression Syntax
Several simplifications have been made to the RasMol atom expression 
syntax.  Individual chains may be specified by the syntax ":A" for 
chain A, or ":1" for chain 1 (i.e. the wildcard "*" may be dropped from 
the expression "*:A").  This may also be extended to NMR models; ":A:4" 
denotes chain A of model 4, and even more terse "::4" means all atoms 
in all chains of NMR model 4.

[4.7]  Improved Restrict Command
The RasMol "restrict" command now turns off the display of ribbons, 
strands, cartoons and backbones outside of the given atom expression.  
This command does not currently affect distance monitors, dot surfaces 
or labels but this may change in future versions of RasMol.


[5] FILE FORMATS

[5.1]  MOPAC File Formats
RasMol can now read MOPAC format files.  The new "load mopac 
" command automatically distinguishes between MOPAC input 
and output file types, and can read input files in both cartesian 
and internal (z-matrix) formats.  RasMol will also read the charge 
information in MOPAC output files, however it can not read the output 
files of MOPAC jobs specifying the NOXYZ keyword.

[5.2]  Multiple NMR Models in PDB Files
RasMol may now load all of the NMR models from a Brookhaven PDB file 
using the new command "load nmrpdb ".  The NMR file format 
instructs the PDB reader to load all the models from the PDB file, 
instead of just the first one as is the behaviour of the (default) 
"pdb" format specifier.  If the specified PDB file does not contain 
an NMR structure the behaviour of "nmrpdb" is identical to that of "pdb".  
Once multiple NMR conformations have been loaded they may be manipulated 
with the atom expression extensions described in section [4.5].

[5.3]  Alchemy File Fomat
The Alchemy file format reader has been enhanced to allow hydrogen 
bonds to be explicitly represented in a file using the keyword 
HYDROGEN, instead of the typical SINGLE, DOUBLE, TRIPLE or AROMATIC.

[5.4]  IRIS RGB Image File Format
RasMol on all platforms now supports the generation of images in 
IRIS RGB format files. This file format is often used when running 
on Silicon Graphics workstations.  The appropriate form of RGB file
is used by both 8bit and 32bit versions of RasMol.  These files may 
be created using the "write iris " command.

[5.5] MDL Mol File Output
RasMol version 2.6 may now be used to generate MDL Mol files.  The 
new command "save mdl " saves the currently selected set 
of atoms to the specified file in MDL file format.


[6] MACHINE SPECIFIC

[6.1]  Monochrome X Windows Support
RasMol now supports the many monochrome UNIX workstations typically 
found in academic, such as low-end SUN workstations and NCD X-terminals.  
The X11 version of RasMol (when compiled in 8bit mode) now detects 
black & white X Windows displays and enables dithering automatically.   
The use of run-time error diffusion dithering means that all display 
modes of RasMol are available when in monochrome mode.  For best 
results, users should experiment with the "set ambient" command to 
ensure the maximum contrast in resulting images.

[6.2]  Tcl/Tk 3.x and 4.x IPC support
The recently announced version 4 of Tk graphics library has changed 
the protocol used to communicate between Tk applications.  RasMol 
version 2.6 has been modified such that it can now communicate with 
both this new protocol and the previos version 3 protocol supported 
by RasMol v2.5.  Although Tcl/Tk 3.x applications may only communicate 
with other 3.x applications and Tcl/Tk 4.x applications with other 
4.x applications, these changes allow RasMol v2.6 to communicate 
between processes with both protocols (potentially concurrently).  

[6.3]  UNIX sockets based IPC
The UNIX implementation of RasMol v2.6 now supports BSD-style socket 
communication.  An identical socket mechanism is also being developed 
for VMS, Apple Macintosh and Microsoft Windows systems.  This should 
allow RasMol to interactively display results of a computation on a 
remote host.  The current protocol acts as a TCP/IP server on port 
21069 that executes command lines until either the command "exit" or 
the command "quit" is typed.   The command "exit" disconnects the 
current session from the RasMol server, the command "quit" both 
disconnects the current session and terminates RasMol.  This 
functionality may be tested using the UNIX command "telnet  
21069".

[6.4] Compiling RasWin with Borland.
A number of changes have been made to the source code to allow the 
Microsoft Windows version of RasMol to compile using the Borland C/C++ 
compiler.  These fixes include name changes for the standard library 
and special code to avoid a bug in _fmemset.

Modified: Fri May 22 16:00:00 1998 GMT
Page accessed 8680 times since Sat Apr 17 21:25:11 1999 GMT