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.