From: wes@ux6.lbl.gov (Wes Bethel)
Newsgroups: comp.graphics.avs
Subject: Re: Help with Creating Colored, Time-Varying, Geometric Object
Date: 15 Dec 1992 16:11:23 GMT
Organization: Lawrence Berkeley Laboratory
Reply-To: wes@ux6.lbl.gov (Wes Bethel)
NNTP-Posting-Host: ux6.lbl.gov

In article <1992Dec15.064951.65@rcwusr> lakerb@rcwusr.bp.com writes:
>..The map is a geometry
>object and I would like to create colored circles/spheres/objects at four
>particular locations on the map.  The color of these objects would vary as
>Animated Integer and a Slicer step through a data file of hourly pollution
>readings.
>
>In a later stage, the map will become the output of a Field-to-Mesh module,
>with the same requirement for colored circles/spheres/objects.
>

We've done similar work doing movies of earthquakes (we have a keen
interest in earthquakes ;-).

One of the biggest holes that folks fall into when doing visualizations
of multiple sets of different types of data is when the datum are in
different coordinate systems.  The map is in one system, the earthquakes
in another, etc. etc. etc.  It is an incredible pain.  The result is
that whoever is doing the visualization gets the thankless task of
rectifying these divergent coordinate systems, often the result of the
lack of communication (or worse, agreement) between the collaborating
factions.  Ok, having soapboxed, I'll pass along descriptions of a 
few subnetworks:

1. Colored spheres:

	read field -> bubbleviz -> scatter dots -> render geometry

	The field must be a 1d, 3space field; a list of points.  The
	data must be reducable to a scalar which you can color code.
	Use the opacity channel of the colormap to control the radius
	size of the spheres, in conjunction with the radius dial on
	scatter dots.  Thus, you can get colored spheres of varying
	radius.

	Pitfall: scatter dots only takes 1d, 3space fields.  I suggest
	that scatter dots be modified to take N-d, 3-space fields (hint,
	hint, AVS!).

	Adding the slicer between read_field and bubbleviz will give
	you the capability to animate this network.  Hint: use the
	interpolating slicer module at the IAC to do linear interpolation
	between integral slices.  This has worked well for us doing 
	particle collision tracking in nuclear experiments.  As presentations
	at Vis92 in Boston demonstrated, this type of interpolation can
	produce disastrous results for certain types of data (like
	combustion experiments, for example).  

2. Colored "objects"

	The same discussion holds, assuming that you have the capability
	to map from non-geometry to geometry, coupled with the capability
	to color the geometry using a colormap and a scalar value.  You
	may have to write a custom module, or rummage around at the IAC
	to find something suitable.

	My opinion is that these mapper-type modules are more useful when
	color and "shape" (like radius, or eccentricity or whatever) can
	be mapped to independent variables.  The bubbleviz module does
	colorizing and radius specification with a single independent
	variable.


In the future, I'd like to see the capability to colorize based on more
than one independent variable.  THis is awkward in AVS, but doable.  We
have a couple of modules here that perform this task: one variable maps
to hue while another maps to saturation.  I will put these modules at
the IAC in the not-to-distant future.

Happy holidays!

wes
Newsgroups: comp.graphics.avs