JWAVE

Java™ Graphic Components

IFC Based Java Components for Creating Graphics and Visualizations using PV-WAVE as a Graphic Server


Download JWAVE!

December 13, the Public Beta of the JWAVE Java™ Graphic Components was released. You may download the library for free. All we ask is that you agree to our license agreement and provide us with contact information so that we can gather feedback about our work.

Overview

JWAVE is a set of IFC based Java "components" or classes for creating graphic objects for basic presentation graphics and Visual Data Analysis (VDA) as part of a Java applet or application. These components use the PV-WAVE package as a graphic server to actually create the graphics. Components which produce static 2D and 3D graphics are available, as well as components for producing animations and 3D VRML worlds.

The object design used to create these components allows new plot types to be easily created by the end user. To create new components you simply subclass the WaveGraph base class and provide the plot type and which standard PV-WAVE keyword parameters are to be used for this plot type, and support for passing any plot attributes unique to this plot type. Also required is a PV-WAVE procedure which actually creates the plot on the server. No communication programming is required to create new plots, as that code has been encapsulated at both the client and server ends.

The advantages of using PV-WAVE as a graphic server include the ability to rapidly design custom graphics in the PV-WAVE 4GL language, which includes support for many types of graphics from simple 2D/3D charts and graphs to volumetric visualizations, animations, and maps. See the PV-WAVE home page for more information on its broad graphic and numeric capabilities. PV-WAVE offers proven and robust graphics capabilities which can be integrated into java applications and deployed today.

The following plot types are currently available:

WavePlot Creates 2D X/Y plots
WaveHistogram Creates histogram plots
WaveContour Creates line and filled contour plots
WaveSurface Creates wireframe surfaces
WaveShade_Surf Creates shaded surfaces
WaveSurfAnim Creates animated surface plots
WaveVRMLSurface Creates VRML worlds with wireframe or shaded surface representations of data
WavePie Creates pie charts
WaveBar3D Creates 3D bar charts

A Simple IFC Applet Example

A very simple IFC Applet utilizing the WavePlot component can be viewed which shows how these components can be used in an applet. The source code for this example shows how the component is initialized, plot attributes set, and the actual plot produced. (Note: this example should run on any browser and does not require that the Netscape IFC classes be installed on your machine, but if you do have the IFC beta installed it must be the Barium release for the applets to work properly.)

IFC Examples for the WaveGraph Components - Sun Ultra Powered!

Below are examples of all of the graphic components currently available, along with links to the source code for each example and the documentation for the component used in the example. These examples will run as applets on your browser, and communicate with a graphic server in Boulder, Colorado to create the graphic images, animations, and VRML worlds. They all either use data generated in the java applet itself or data input into a text widget to produce the graphic display. Thanks to Sun Microsystems, Inc. for providing the Sun Ultra 1 Creator 3D that powers these demonstrations.

WavePlot Example Example Source Code WavePlot Documentation
WaveHistogram Example Example Source Code WaveHistogram Documentation
WaveContour Example Example Source Code WaveContour Documentation
WaveSurface Example Example Source Code WaveSurface Documentation
WaveShade_Surf Example Example Source Code WaveShade_Surf Documentation
WaveSurfAnim Example Example Source Code WaveSurfAnim Documentation
WaveVRMLSurface Example Example Source Code WaveVRMLSurface Documentation
WavePie Example Example Source Code WavePie Documentation
WaveBar3D Example Example Source Code WaveBar3D Documentation

You may, if you wish, download the source code for these examples and run them as java applications, for example by typing "java plot" for the plot.class example. The code for these examples is designed to run as either an applet or an application, and in the case of an application will let you select an ASCII file to use as input data. The java code was only written to read files with either one data value per line, or comma separated data. (You could modify the java code to read other data if you wish). You must have Sun's Java JDK or a java development tool installed, as well as the Netscape Barium release of the IFC installed in order to run these examples locally. Feel free to experiment with these examples and use our PV-WAVE graphic server to create plots. The Sun Ultra machine graciously provided by Sun Microsystems provides exceptional performance as both a web and graphic server machine.

A complete distribution of all the components, example source code, and code for the PV-WAVE based server is available as a zip file which includes documentation for installing and configuring the PV-WAVE server on your web server machine. Also included are instructions for running these examples on a standalone machine which has PV-WAVE installed and which uses a simple file transfer mechanism to communicate between java and PV-WAVE.


Go back to the VNI Web Products Division Home Page.
Go back to the VNI Home Page.
Copyright © 1996 - Visual Numerics, Inc.®