Vis5d+

Introduction

Vis5d+ is intended as a central repository for enhanced versions and development work on Vis5d, a free OpenGL-based volumetric visualization program for scientific datasets in 3+ dimensions.

This project started out, with the blessing of the original Vis5d developers, as a conversion of Vis5d's build process to use GNU autoconf and automake. (Inspired by the difficulty of getting Vis5d to compile on the author's LinuxPPC PowerBook.) It quickly became apparent that many other enhancements were possible, and were of wide interest to users. Moreover, a large number of enhanced versions to Vis5d exist that have not been merged into the original Vis5d sources, due to time and resource limitations of the original developers, or to differences of opinion about design directions.

It is our hope that, in the future, Vis5d+ may serve as a central place for work on enhancements to Vis5d; in part thanks to the collaboration, hosting, and version-control services provided by SourceForge.

Differences from the Original Vis5d

Vis5d+ is based on Vis5d 5.2, and continues to track changes in the original sources and share bugfixes as much as possible. (It is currently synchronized with the mainline Vis5d as of April 2, 2001.)

Some of the main enhancements in Vis5d+ include:

See the Vis5d+ Release Notes for a more complete list of changes.

Download and Other Links

Go to the download page to get the latest version (1.2.0) of Vis5d+ (see the release notes for a description of what's new).

Vis5d+ has a mailing list, vis5d-devel, for developer discussions and bug reports. Currently, we recommend that you use the official Vis5d list for user discussions not specific to Vis5d+ (subscribe by sending a message with a body of "subscribe vis5d-list" here).

The Vis5d Homepage has screenshots, documentation, and other links.

The h5utils package includes a program to convert HDF5 files (a standard, free, binary format for multidimensional scientific data) into Vis5d format. (It also lets you convert text files into HDF5, so with a two-step process you can convert text to Vis5d.) Grib2V5d is a program to convert GRIB files (a meteorological data format) to Vis5d format.

Documentation

You can now read the Vis5d+ manual online, thanks to a conversion to DocBook format by Axel Reimann. A PDF-format manual and a PostScript-format manual are also available.

Possible Projects

There are many things that could be done to enhance Vis5d+, and we list a few ideas below in no particular order. Let us know if you are interested in working on anything.

One obvious project is to merge in changes from one of the other enhanced versions of Vis5d, such as Cave5d (a version that runs in the virtual reality CAVE and ImmersaDesk), the Boom-mounted virtual environments version, the stream-enabled version, the feature-tracking version.  The stereo/NCAR version was merged in the 1.2.0 release.  We are pleased to have NCAR developers on board.

Not all of Vis5d+ uses autoconf: the contrib, convert, and userfuncts directories remain exactly as they are in the original Vis5d, and it would be nice to "autoconfiscate" these where possible.

As it stands, there are a number of hard-coded limits (in v5d.h) on the number of rows, columns, etcetera. It would be much nicer to remove these, and use dynamic allocation strategies to choose an appropriate amount of memory on the fly.

It would be nice to have a number of different possible color tables built in.

On a small screen, the isosurface selection pop-up and other subsidiary windows often appear only partially visible at the far bottom of the screen; it would be good to fix this.

Currently, Vis5d depends upon a non-free library called "LUI", which is licensed for free redistribution (with source) only with Vis5d. It might be nice to convert the interface to a free and more modern GUI library like GTK+, which would also increase portability (GTK+ has been ported to Windows and other systems) and add options for future interface enhancements. (On the other hand, using GTK+ would require people on non-Linux Unix systems to download this library if they don't have it yet.) This is a big project, as it requires that you essentially rewrite the UI code.  The GTK interface is a work in progress, a prototype is included with the 1.2.0 release in the gtk directory.

Contact Info

Steven G. Johnson and Jim Edwards are the maintainers of the Vis5d+ project.

The maintainer of the original Vis5d program is Bill Hibbard; you can also send comments about the original Vis5d (and its relation to Vis5d+) to the Vis5d mailing list.