Java Based Image Display for Protein Crystallography

  Java based Image Display

  John W. Campbell


This Java based image display software for Protein Crystallography is based on earlier C/Fortran based image display software developed at the Daresbury Laboratory in the 1980's as part of a toolkit called XDL_VIEW. The general features of the image display will be familiar to users of that package. The original package is still available through the CCP4 project. Note that, in the Java version, new scrollbars provide an alternative way of zooming (left scrollbar) and moving around (right and bottom scrollbars) the image.

This is work under development and is being made available here for trial and feedback from interested parties. Some demonstration images are available to try out some of the features of the display. There are also options for running an image display program with your own images but you will need to set up permissions to enable your own files to be accessed. This is also a requirement if you want to use the image printing options (to file or printer) of the display or to paste text (e.g. file names) into the program.


Brief documentation, indicating how to use the various program functions, is available via the 'Help' button at the top of the image display. The XDL_VIEW image display documentation may also be useful. If there is a positive response to the software then it is my intention to provide more detailed documentation.

IPDISP Options

Some of the options available in the program IPDISP are available through the 'User Supplied Options...' item from the drop down menu obtained by pressing the right hand button at the top of the image display. The image display object has a facility to add further user defined options to the display (programmed in Java) and this facility has been used to add in these IPDISP based options. For more details of how to use these options you will need to look at the documentation for IPDISP.

JdlView Developments

Progress is well advanced in producing a Java equivalent of the XDL_VIEW package. This will enable similar functionality to XDL_VIEW to be used in Java based (and hence Web based) programs. The overall look has been somewhat modernised but the basic philosophy of the package is the same with the important exception that there are no plans to provide any interfaces to other languages such as Fortran. The general purpose objects are in place but those required for showing simulated diffraction patterns, for example, still need to be written. My current aim is to produce a ROTGEN like program in the not too distant future.

I have been using the JdlView objects for some of my own programs at home (nothing to do with Protein Crystallography). The timescale and extent of any PX related software is likely to be closely related to the degree of interest shown. So, if you feel that it will be useful to you, any feedback from you will be important even if it is just an email to say that you are interested in any of the software.


Four demonstration images are available. As these are stored on the web server, they may be accessed without having to set up any special permissions (though you may need to do that if you want to try the print option).

Lysozyme Image (Large MAR)

Pig Serum Transferrin Image (Large MAR)

Yeast Phosphoglycerate Mutase Image (Small MAR)

Wax Rings Image (Small MAR)

Image Display Program

A trial program is available in two forms. In the first case the applet and image display are contained within the Web page. In the second case, a two button applet is used to launch (or remove) an independently positioned version of the image display program. Because of the security surrounding applets, the user will need to set up a policy file to enable access to the user's image files which are to be displayed (and printer if required). In addition to the image file, the user will need to supply an IPDISP type 'spdfil' file name or code indicating the image type. The following codes are available for hardwired image type options:

ab            2x2 ADSC scanned binned mode
a             2x2 ADSC scanned

m, ma, mar,   MAR image plate scanner
mo, bo
M, bm, ms     MAR image plate scanner (squashed pixels)
mc            MAR CCD scanner (130 mm)
md            MAR CCD scanner (165 mm)

r             Raxis 2 fine scan
rc            Raxis 2 coarse scan
r4            RAXIS 4 (100 micron)

pf            Photon Factory Weissenberg plate

c, C          Mac Science 2500x2500
d3            Mac Science DIP2030 3000x3000
d4            Mac Science DIP2040 4000x4000

dc            D2AM CCD scanner

px            Oxford PX210 CCD detector

You may need to click the mouse in the I/O window so that it has the keyboard focus before inputting this information. (The colour of the 'Input Mode' message at the top of the I/O window should change from blue to black when the window has the keyboard focus)

I only know the minimum about setting up policy files. There is a 'policytool' program supplied with Java to help set these up. The best I can do for you is to show you the examples of the files I have set up at home for Windows XP and for Linux. Because of security restrictions the Java file browser cannot be used from applets and so I have set up a mechanism to enable directories/folders to be represented by user selected logical names (cf the FILM directory that used to be used the Vax at Daresbury for anyone who may remember that).

Image Display Applet within page

Image Display launched from applet


August 2004