jmol enhanced figure toolkit
Previous | Top | Next |
Why Jmol?
Jmol (http://www.jmol.org) is a richly-featured three-dimensional molecular visualization program that is widespread in the chemical, crystallographic and biomolecular communities. It is in many ways a descendant of RasMol and Chime, but it has significant abilities to represent features of particular interests to crystallographers that surpass those available in the earlier programs.
It has many features that have led to the IUCr journals adopting it as the engine for enhanced figures.
First, it is implemented in Java, a machine-independent language that is implemented as a virtual machine on all current operating systems of interest to most crystallographers. Java plugins are implemented in most web browsers, so that the end-user does not have to download the software -- it is automatically loaded on demand the first time a browser visits a web page hosting a Jmol applet.
Second, it has a rich scripting language, so that external script files may be used to generate and drive particular views, renderings or animations. At the same time, it is easy for the end-user to manipulate the objects visualized with the mouse, keyboard and other computer peripherals.
Third, it is associated with a rich JavaScript library that allows the user to interact with the application through standard widgets found on a web page (buttons, checkboxes etc.) This makes it particularly easy to build a natural user interface to an enhanced figure.
Fourth, it has a very clean mechanism for exporting the current graphics state. If this exported state is imported into another instance of the applet, the exact same view will be regenerated. This is essential for an application that allows authors to edit a Jmol visualization on their own computers, taking advantage of their local processor power, graphics card capabilities etc., but then to transmit what they have done back to the journals server, allowing it to create the static view and also to download the interactive representations to the journal readers.
Finally, it is an open-source project that is currently extremely well supported by active, talented and enthusiastic developers. At the same time, it is mindful of the need to maintain long-term compatibility with older programs and with older versions of the same program. These are features which are essential if we are to consider it as the basis for storing parts of the long-term record of scientific research.
Previous | Top | Next |