The image below shows a screen shot from the Java 3D event viewer applet (which will be demonstrating at the Internet-2 Fall Meeting in San Francisco at the end of September 1998). The display shows a 3D rendering of almost the whole of the CMS detector. The Inner Tracker detector is depicted by the innermost faint blue structure at the centre of the detector. Digitisings ("hits") are shown by red points in this detector. The white and grey lines are the reconstructed tracks. Immediately surrounding the Tracker is the Electromagnetic Calorimeter (ECAL), shown as a faint green tube, with shower deposits (from decaying photons and electrons) in the crystals appearing as green towers pointing away from the centre of the whole detector. Surrounding the ECAL is the Hadronic Calorimeter, in faint purple, with shower deposits (from decaying hadrons like pions) represented as pink towers. The outermost layer shown is a cylinder representing the solenoid. Reconstructed "jets", high momentum sprays of electromagnetic and hadronic energy, are shown as large towers pointing from the centre of the detector and labelled "JET".
The applet uses
The initial scenegraph is prepared by opening the Objy database and reading the tracker layer geometry. Thick cylinder custom shapes are created for each layer and rendered as wire-frames The ECAL is added as a barrel and two endcap thick cylinders, and rendered as a transparent solid, as is the ECAL. The resulting scenegraph is compiled (it is used unchanged for each displayed event) When the user selects one of the event buttons, the event data are read from the database, and rendered as: Custom towers for ECAL crystals and clusters LineArrays for tracks PointArrays for Tracker digits
The event data branch is then attached to the detector branch, and compiled. When a new event is selected, the previous event branch is detached and deleted. The whole scenegraph can be rotated, translated and zoomed using the mouse. All objects are pickable. Ambient, point, and spot lighting not (yet) used, nor is sound.
You can examine the source code (very much "Work in Progress").
The JavaCMS event viewer allows the user to remove or add all the subdetector detail piecewise, to rotate and zoom the picture, and will eventually allow the user to select individual objects in the display and interrogate the Object Database for their properties.
A 2D applet was initially developed, an image of which appears below. It depicts an end view of the Compact Muon Solenoid (CMS) detector to be used at the LHC, showing the structure of the Tracker (red and blue rings) together with individual "hits" (green dots) and reconstructed particle tracks (white and grey lines with numbers). Notice how the particle tracks of lower momentum (grey) curl in the magnetic field from the large solenoid magnet (not shown) that surrounds the Tracker detector. The Electromagnetic Calorimeter crystal tower energies are shown in yellow, with reconstructed energy clusters in red.
Some comments on the use of Java with Objectivity, and other views of the 2D applet are available here.
Julian Bunn, September 1998