MolScript

MolScript is a molecular graphics program that is specialized for protein visualization. MolScript in and of itself is incapable of displaying the drawings that it generates, nor does it offer a graphical user interface. The program is operated using a command language. The output possibilities include PostScript, Encapsulated PostScript, and an intermediate file that can be further processed by Raster3D. The input consists of a PDB format molecule file and a user-written MolScript command file.

The following MolScript command file can be used to draw human hemoglobin (PDB file 1hho):

plot

! All non-hydrogen atoms
!
    read mol "1hho.pdb";
    transform atom *
      by centre position atom *;
!
! Increase the number of segments to get smoother shading
!
     set segments 14;
     set helixwidth 1.2;
     set atomradius atom C* 2.4;
     set atomradius atom N* 2.4;
     set atomradius atom O* 2.0;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from A2 to A3;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A3 to A18;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from A18 to A20;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4;

     helix from A20 to A35;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from A35 to A36;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A36 to A42;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from A42 to A49;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A49 to A51;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from A51 to A52;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A52 to A71;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from A71 to A80;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A80 to A88;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from A88 to A94;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A94 to A112;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from A112 to A118;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from A118 to A138;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from A138 to A141;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B1 to B4;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B4 to B18;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from B18 to B19;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B19 to B34;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from B34 to B35;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B35 to B41;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B41 to B50;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B50 to B56;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     turn from B56 to B57;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B57 to B76;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B76 to B85;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B85 to B93;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B93 to B99;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B99 to B117;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B117 to B123;

     set planecolour  hsb 0.6 0.7 1.0 ;
     set plane2colour hsb 0.6 0.7 0.7 ;
     set linecolour   hsb 0.6 0.7 0.4 ;

     helix from B123 to B143;

     set planecolour  hsb 0.8 1.0 1.0 ;
     set plane2colour hsb 0.8 1.0 0.7 ;
     set linecolour   hsb 0.8 1.0 0.4 ;

     coil from B143 to B146;

     set atomcolour atom C* hsb 0.666 0.1 1.0;
     set planecolour  hsb 0.666 0.1 1.0 ;
     set plane2colour hsb 0.666 0.1 0.7 ;
     set linecolour   hsb 0.666 0.1 0.4 ;
     ball-and-stick in type HEM;

     set atomcolour atom * hsb 0.55 0.7 1.0;
     cpk in residue B6;
     set atomcolour atom * hsb 0.0 0.9 1.0;
     cpk in residue B11;
     set atomcolour atom * hsb 0.66 0.7 1.0; 
     cpk in residue B20;

end_plot
MolScript command files can be written from scratch, adapted from sample files supplied with the program, or can be generated using RasMol.

The MolScript language contains provisions for rotating molecules, but it is probably more convenient to obtain the desired view(s) using an interactive molecular graphics program, and outputting the updated coordinates to a PDB file.

Note that it is up to the user to specify the sequence of residues belonging to each secondary structure element. The last residue of each preceding element must overlap with the first residue of each succeeding element. The assignments can be made using other programs or from information contained in the PDB files.

Electronic documentation for MolScript is available ((Per Kraulis, Uppsala Univ., Sweden via Univ. of Zurich).

PostScript Output

Run MolScript using the following command:

molscript < molscript_command_file > postscript_output_file

where "<" and ">" are Unix redirection commands.

MolScript as a Raster3D Pre-Processor

The combination of MolScript and Raster3D produces extremely sophisticated bitmap drawings.

Run MolScript using the following command:

molscript -r < molscript_command_file > raster3D_command_file

where "<" and ">" are Unix input and output redirection commands. The Raster3D output file created by MolScript can then be used to drive Raster3D.

The MolScript input file provided above results in the following drawing after processing with Raster3D: