Further Analysis of Visualization Packages
A D V E R T I S E M E N T
We compare the properties of four general purpose visualization packages,
viz. Data Visualizer 3.0, IRIS Explorer 3.0, AVS 5.0, and DX 2.1. Updated
versions of these packages are available on the SciVis Lab's high-performance
graphical workstations.
One of the major differences is that Data Visualizer is a turnkey application
whereas the others are application builders. Turnkey applications enable the
user select operations and options by pushing buttons (`keys') only. Hence, it
does not require a lot of knowledge to operate them. However, these applications
do not allow the user to extend the set of available operations. Application
builders, in contrast, do allow extension by user-written operations and they
provide a much greater flexibility in the processing and visualizing the data.
The user builds an `application' for the visualization of his data by connecting
modules, each performing a specific action on the data. The connections between
these modules represent the data flow between them. The user can choose from a
large set of modules which is supplied by the vendors as a standard set. If it
happens that one can not perform an action using these modules, one can write a
module oneself or check at an international site if such a module is already
written by other users. At these international sites user-written modules from
all over the world are gathered and made available to other users. Such
international sites exist for IRIS Explorer, AVS, and DX. If we write `standard
support' in the remainder of this section we mean the support offered by the
modules which are supplied by the vendors.
Prices are also different for the packages. Most packages are sold at commercial
rates. However, DX can currently be bought at a reduced rate for use in
scientific areas.
Data Visualizer and DX are available at workstations from almost all large
workstation vendors, viz. IBM, Silicon Graphics, DEC, HP, and Sun (DX only). AVS
is available on even more workstations and also on a number of supercomputers
and massively parallel processor (MPP) machines. In contrast with these three
packages, IRIS Explorer is only available on Silicon Graphics workstations and
on CRAY supercomputers. A pleasant side effect of this platform dependency is
the fact that the package has been optimized for the available graphical
hardware.
AVS and DX include a hardware renderer which has been constructed for each type
of platform in order to make efficient use of the available graphical hardware.
Besides the hardware renderer they also have a software renderer which produces
X-images. This makes it possible to run these packages on workstations without
3D graphics support and also to run them as a remote X-client. Data Visualizer
does not make optimum use of available 3D graphical hardware. This becomes
evident as soon as one wants to translate or rotate objects using the mouse.
Whereas it is possible to translate and rotate objects instantaneously (i.e.
without delay between mouse action and the display of the objects in their new
positions) when using IRIS Explorer or AVS on a Silicon Graphics VGX
workstation, this is not possible within Data Visualizer.
For a typical visualizations DX uses the most amount of memory and Data
Visualizer the least amount, see appendix B. The difference is approximately a
factor 2.
A major disadvantage of both IRIS Explorer and Data Visualizer is that one can
not operate them as a remote X-client. As one has to work on the machine on
which the package has been installed, this limits the use to one person at a
time.
The distribution of the visualization work over machines in a network is well
supported by AVS and IRIS Explorer. Due to the platform dependency IRIS Explorer
is able to distribute its work over Silicon Graphics workstations and CRAY
supercomputers only. However, since AVS is available on a wide variety of
platforms, it can distribute its work in a heterogeneous network of
workstations, supercomputers, and MPP machines. In both cases modules, being a
natural unit of work, are distributed. DX and Data Visualizer do not support
distributive processing. Data Visualizer only allows the data reader to be
distributed.
Computational steering is supported by all three application builders in the
sense that the simulation can be cast into a module and that module widgets,
which are attached to important parameters of the simulation, can be set from
within the user interface. Data Visualizer does not support computational
steering.
All packages, except for IRIS Explorer, are supplied with an almost complete set
of general 3D scalar and vector visualization techniques, viz. isosurfaces,
cutting planes, orthogonal slicers, particle advection, streamlines, streaklines,
textures, scalar and vector glyphs, and ray casting. IRIS Explorer does not have
streamline, streakline, and a particle advection method. Furthermore, only the
splatting technique, a volume rendering with lesser quality, is available. A
serious inconvenience of AVS is the fact that the result of the ray tracing
technique can not be displayed in the same image as the results of other
techniques. Standard support for the visualization of molecular structures is
only available in AVS and IRIS Explorer. Data Visualizer certainly can not be
used for molecular visualization. In the case of DX one can obtain modules at
the international DX site for visualizing these structures.
Since Data Visualizer can only act on 3D or 4D data sets, one is obliged to do
lower dimensional data with another application (e.g. a simple plotting package)
or add the necessary dimensions artificially. It is much more efficient to do
this with only one package. The other packages provide 1D and 2D visualization,
viz. graphs, histograms, contour lines, image display, etc. As investigation of
lower dimensional data is normally done with plotting packages, which are
turnkey applications, AVS offers also two stand-alone turnkey applications for
these purposes. One application is a fully equiped plotting package, and the
other one can be used to manage sets of images and perform a number of image
processing operations. These two applications are also available as modules, so
that their full functionality is also available within the `application'
building environment.
Notwithstanding the obviousness for annotation from a scientist's point of view,
it is not trivial at all in visualization packages. Only Data Visualizer and DX
provide a complete set of annotation tools, viz. axis, bounding boxes, color
legends, text labels (also dynamic). AVS does not provide a color legend tool,
nor does it provide dynamic text labels. IRIS Explorer only provides a bounding
box tool.
The lack of some important 3D visualization techniques as well as the lack of
the most important annotation tools are serious drawbacks of IRIS Explorer.
Flipbook animation is supported by Data Visualizer, AVS, and DX only. In
addition, Data Visualizer supports keyframe animation.
All packages are able to write and read data to and from disk using internal
data file formats which correspond to the internal data structures. Since data
coming from simulations or experiments generally have other formats due to a
lack of a standard format for multi-dimensional data, support is supplied to
cast the data into the internal data structures. AVS and IRIS Explorer provide
the most user-friendly support. Both packages have an application with which you
can specify, through a graphical user interface, how the data file looks like
and how it should be cast into an internal data structure. Information from
within the data file can be used to determine the layout of the data. In DX a
data parser is available to cast data into the internal data structure. The data
parser needs specifications of how the data is stored in the file to be able to
cast the data into the internal data structure. In contrast to AVS and IRIS
Explorer, no interactive application exists to help the user to write these
specifications. Furthermore, it is not possible to use information from within
the data file to determine some of the specifications needed by the parser. Data
Visualizer provides the least help to read other data file formats. The user has
to program the parser himself.
As some data formats are frequently used and encountered, some packages have
relieved the user from writing them by supplying the necessary modules and data
readers. For example, the netCDF file format is supported by Data Visualizer and
DX (DX also supports HDF), while branch specific formats, like the PLOT3D format
(computational fluid dynamics) and the Brookhaven protein data base PDB format
(molecular chemistry) are supported by Data Visualizer, IRIS Explorer, and AVS.
As an indication that AVS is the trend setter and market leader in the
visualization branch we can mention that Data Visualizer supplies a data reader
for the AVS field file format and that IRIS Explorer version 2.0 will contain
modules to read AVS field, UCD, and image file formats. The AVS field file
format appears to become a kind of standard for multi-dimensional data.
Although a standard for image file formats exists nowadays, viz. CGM, it is not
supported by any of the packages. However, since image format conversion tools
are freely available, this does not pose difficulties as long as the packages
produce at least one format that is recognized by the conversion application.
This is true for the four packages we have compared. From a viewpoint of
efficiency, however, it is convenient if some of the most used formats (in other
applications) are supported. It is, therefore, inconvenient that IRIS Explorer
does not support writing (color) PostScript images and that AVS and Data
Visualizer do not support general image file formats like RGB and TIFF.
While using AVS and IRIS Explorer, we experienced that most of the modules we
wrote ourselves were concerned with data manipulation. This was necessary as the
standard sets of modules of those packages only contain some basic manipulation
modules for cropping, sampling, and interpolating data. Although a module is
available in AVS to perform some simple arithmetic on data values on a node by
node basis, this could not solve all our problems. We also wanted to manipulate
grids and this forced us to write modules. This is not necessary in DX. It
provides, besides modules to crop, sample, and interpolate data, a module to
perform arithmetical operations on data on a node by node basis. The difference
with AVS is that this module has a much larger set of operations and that it is
not restricted to act only on the data values. It can, in fact, perform its
operations on every component of the data structure, viz. the node positions,
node connections, etc. Another drawback of AVS as well as IRIS Explorer is the
limitation of the manipulation techniques to Field and UCD structures in AVS and
Lattice and Pyramid structures in IRIS Explorer. For example, the isosurface
module outputs a geometry data structure in both packages. If one wants to
extract some nodes of this geometry in order to use them as starting points in
the streamline, streakline, or particle advection modules, one has to do that by
writing a module. DX does not possess this disadvantage as only one kind of data
structure is used to store all information. Another advantage of DX's data
structure is its flexibility with respect to extension. New components are
easily added and can be manipulated with the same ease as the other components.
In AVS and IRIS Explorer user-defined data must be stored in special data
structures. Manipulation of these structures is only possible by writing
specific modules that perform these manipulations. Manipulations in Data
Visualizer are restricted to arithmetical operations on a node by node basis.
Except for IRIS Explorer, the user interacts with the visualization package
through a graphical user interface (GUI) or using a command language from within
a shell. In IRIS Explorer there is only the graphical user interface for the
interaction between package and user. Although the GUI's of the four packages
display a lot of similarities in layout as well as interaction techniques, we
prefer to use the GUI of AVS and Data Visualizer. Especially the possibilities
to move, rotate, and scale objects as well as the camera manipulation techniques
are easier to work with. A very nice property of AVS is the possibility to
change the layout of the interface. This really enables one to make an
application.
The fact that the SciVis Lab offers its clients many application builders and
few turnkey application reflects the trend in the scientific visualization
branch to change to application builders. This trend is mainly driven by the
much greater flexibility and opportunities to extend the set of operations with
user-written functions. Despite this trend people might still be interested in
using turnkey applications like Data Visualizer. The time to get started with it
is considerably shorter than with application builders, it has an excellent user
interface, and it offers an almost complete set of 3D scalar and vector
visualization techniques, annotation tools, and animation techniques. We,
therefore, recommend it to be used in areas where flexibility has no priority at
all and where the users do not have the time and the intention to make complex
visualizations. If, however, flexibility and functional extension is of primary
importance, we firmly recommend to use an application builder. Which one depends
on the importance of the items we have described and discussed above.
|