The NCSA Horizon Image Data Browser is a Java package for creating applets and applications that browse scientific images. The background and scope of this toolkit was presented at ADASS VI (Plante et al. 1997), and some of key features important to astronomers--support for metadata and world coordinate systems--were presented at ADASS VII (Plante et al. 1998). This year, we are releasing Horizon 2.0 which provides several new features:
Java's support for efficient access to multidimensional arrays is
somewhat lacking. To make up for this shortcoming, Horizon provides a
ncsa.horizon.arrayND, that gives fast, flexible access to multidimensional array data by:
Access to multidimensional array data is usually made most efficient when it is done through via 1-D sub-arrays which we refer to as ArrayChunks. Special iterators called Chunkerators allow one to step through a multidimensional array in 1-D chunks. The ncsa.horizon.arrayND package is general purpose and can be used independently of the rest of the Horizon package.
Collaboration support allows a group of astronomers to explore the images together even when they are dispersed around world. Horizon supports collaboration through another package called NCSA Habanero. When a user starts up the Habanero environment, she can contact her collaborators by email to join her session. Together, they have access to a variety of general purpose and application-specific collaborative applets, or hablets. When a hablet is run, all participants see a copy of it; when one person interacts with the hablet's GUI, everyone sees the result. General purpose hablets that help the participants work together include a chat window and white board. Horizon hablets, loaded into the Habanero environment, thus allow the collaborators to explore images together (Crutcher, Plante, & Rajlich 1998).
The central idea behind Habanero's collaborative model is event sharing: events generated in one version of a hablet is shared with the collaborating versions; thus, all collaborators see the same state. The high level GUI classes from Horizon 2.0 have been made Habanero-aware by defining the events that should be shared by default. This makes it easy create applets that can either be run collaboratively within the Habanero environment or stand-alone.
Astro3Vis is a pair of tools--a server and a client--which allow astronomers to create and interact with 3D visualizations of astronomical images over the Web. VRML is used to transport the visualization from the server to the client. Using VRML is advantageous for two reasons in particular: first, it brings high-end graphics to low-end workstations, and second, the visualizations can be easily edited and saved away for future display, say, over the Web. The two parts to Astro3Vis are the VRML Server and the Astro3d, a VRML browser.
The VRML Server is used to create 3D visualizations from FITS image cubes over the Web. It is currently installed as a service of NCSA Astronomy Digital Image Library (ADIL). When this tool was first introduced (Crutcher, Plante, & Rajlich 1998), it featured an HTML forms interface. Today, visitors use a Java interface to request images from the ADIL, enter the visualization parameters, and download the results as a VRML file. When loaded into a VRML browser, users see the data visualized within a cube which can be turned and examined from any angle (the so-called ``examine'' navigation mode, see Fig. 1); alternatively, users can explore the data by ``walking'' through and around the data.
The Server supports a few visualization methods including isosurfaces, raster slices, and contour slices. Not only can a single visualization feature multiple methods, it can also feature multiple datasets. Thus, one can, for example, compare the emission from different chemical species in a single VRML file. The interface also allows one to request subregions, subsamplings, and relative scalings of the axes.
The VRML Server is based on the Visualization Toolkit (VTK), a free, highly portable C++ library for rendering 3D graphics. The VRML files it creates can be viewed with any standard VRML 2.0 browser; thus, it is possible to take advantage of 3D graphics on a large variety of platforms including Windows, Macs, and Unix machines.
The client side of Astro3Vis is a pure-Java VRML browser called Astro3D. This application, shown in Fig. 1, allows one to explore any standard VRML 2.0 file using the traditional ``walk'' and ``examine'' navigation modes. Astro3D is built on top of the Java 3D API and NCSA Portfolio, an object library for building Java 3D applications.
Astro3D has several features that extend beyond traditional VRML browsers. These include a 3D cursor that can be moved around within the data cube and whose position is displayed in the browsers interface. The cursor can also be used to annotate the VRML files with lines, boxes, and text; the edited file can then be saved to local disk. 2D snapshots of the visualization can also be saved to disk as JPEG files. Thus, Astro3D allows astronomers to create 3D figures which can be posted on the Web or published in an electronic journal.
Other Astro3D features are enabled when it is used with the VRML Server (usually done by installing as a VRML helper application to the Web browser). One such feature is the ability to select subregions with the 3D cursor and request a new visualization of that region from the server. One can also track world coordinates with the cursor. This feature is possible because the VRML Server embeds the FITS header information within the VRML file; while the header is ignored by standard VRML browsers, Astro3D reads the header and interprets it with the help of the NCSA Horizon coordinate classes. Other features include support for collaboration and stereo (when stereo hardware is available).
Crutcher, R. M., Plante, R. L., & Rajlich, P. 1998, in ASP Conf. Ser., Vol. 145, Astronomical Data Analysis Software and Systems VII, ed. R. Albrecht, R. N. Hook, & H. A. Bushouse (San Francisco: ASP), 3
Plante, R. L., Xie, W., Plutchak, J., McGrath, R. E., & Lu, X. 1998, in ASP Conf. Ser., Vol. 145, Astronomical Data Analysis Software and Systems VII, ed. R. Albrecht, R. N. Hook, & H. A. Bushouse (San Francisco: ASP), 99
Plante, R. L., Goscha, D., Crutcher, R. M., Plutchak, J., McGrath, R. E., Lu, X., Folk, M. 1997, in ASP Conf. Ser., Vol. 125, Astronomical Data Analysis Software and Systems VI, ed. G. Hunt & H. E. Payne (San Francisco: ASP), 341
Roberts & Goss 1993, ApJS, 86, 133