Bugs


Caveat for version 2.1

There may still be bugs in MolScript v2.1. Although the software is used by many people, not all problems may have been reported to me. Also, some new features and code modifications have been made since v2.0.2, so new bugs may have crept in. Hopefully, they are not too serious; many tests have been made during the development. Since MolScript has been reimplemented in the C programming language, it is possible (even likely) that entirely new bugs, which did not exist in the previous versions, have been introduced.

If you have found a bug, then please report it.


Known bugs

General bugs

  1. Only the PDB coordinate file format is supported in the current version.

  2. The graphics commands bonds and ball-and-stick are inefficient in execution time, especially when two atom selections are given and the first selection contains many atoms. For best performance, put the selection with fewest atoms as the first one.

  3. The rainbow colour ramp specification switches automatically the colourramp parameter to hsb and the hsbreverseramp parameter to on. This is not reasonable behaviour.

  4. The graphics state commands push and pop do not save and restore the atomcolour, atomradius and residuecolour parameters.

  5. The level-of-detail command is not handled correctly in non-VRML output modes. Currently, all alternative representations are rendered. The most detailed representation should be used.

PostScript bugs

  1. The slab command has not been implemented properly.

  2. The lighting parameters and commands are hardly implemented at all in the PostScript output mode.

  3. Transparency has not been implemented.

  4. The strands sometimes show defects at twist points, and when viewed directly from the ends. If this is a real problem in your case, then either increase the segment number (for example from 6 to 10) for that strand, or rotate the atoms slightly around the x or y axis. This should at least reduce the problem, if not remove it completely.

  5. In general, the simple hidden-surface removal algorithm relies on segments being small, and not overlapping severely. If unreasonable values for, say, the helixwidth or atomradius parameters are used, then the algorithm breaks down, and very strange results are obtained. The parameter segmentsize can be used to reduce or eliminate the problem in a few cases.

  6. Lines at the edges of strands can sometimes appear jagged, especially when a thick linewidth is used, and when close to strand twist points. This bug is due to the simple hidden-surface removal algorithm in the PostScript output mode, and there is no simple way to eliminate this effect.

  7. In the cpk atom representation, the spheres do not overlap properly. They are simply created as flat disks and then depth-sorted.

  8. When using a mixture of representations, such as helix and ball-and-stick, some graphical segments are occasionally clipped incorrectly. This is due to the simple hidden-surface removal algorithm. In a few cases, this can be remedied by changing the orientation slightly.

Raster3D bugs

  1. The slab command has not been implemented properly.

  2. The implementation of labels in the Raster3D output mode relies on a file from the GLUT library, and may not therefore be available, or may change in future GLUT versions. A more solid solution should be implemented. No Greek characters can be output in the Raster3D mode.

  3. The labelclip parameter has no effect.

  4. The lighting parameters and commands are not well implemented.

  5. The headlight command does not give the expected result. The secondary light source is switched off, not the first. This is related to limitations in the Raster3D input file format.

VRML 2.0 bugs

  1. The implementation of labels is incomplete: no Greek characters can be output, and label centering has not been implemented.

  2. The labelclip parameter has no effect.

OpenGL bugs

  1. It is currently not possible to do translations of the objects to obtain a better view in the interactive window. This is silly.

  2. The input file re-read feature in the interactive menu is supposed to work reasonably even if there are serious errors in the input file. However, there are still pathological cases when MolScript will crash completely when some types of input file errors are encountered.

  3. The implementation of transparency relies on an approximation which is probably needed for interactive performance. In some cases, this will give rise to incorrect rendering.

  4. The implementation of labels is incomplete: there are no Greek characters, the parameters labelcentre and labelclip have not been implemented, and the labelsize parameter is implemented as just a few different sizes. Transparency for labels has not been implemented.

  5. The implementation of the object command is in some parts inefficient in rendering time, although probably not noticeable in most cases.

  6. The coil and turn graphical objects have a quadratic cross-section. Although the surface normals help give an illusion that the coil is a cylindrical object, this ought to be improved.

Reporting bugs that you have discovered

If you discover bugs which have not been documented previously (see above), then please report them by email to the author of MolScript: Per Kraulis (pjk@avatar.se).

In order to be able to identify the exact programming problem giving rise to the observed bug, it is almost always necessary to have the original input file and coordinate file: Please send the input file and coordinate file along with the bug description. Sending just a description of the problem is usually not enough.

The author does not promise to be able to solve the bug within any finite period of time. However, he will do his best, since this is obviously in his own best interest.

It may happen that the coordinate file in question is not public (for various reasons). Therefore, the author of MolScript makes the following statement:

I, Per Kraulis, promise not to use any coordinate file sent to me for debugging purposes for any other purpose than sorting out the MolScript bug. The coordinate file will be destroyed once this has been done, and no copy of it will be saved.


Top page