NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

Re: Elevation surfaces -- Cutting planes

Hi Mohamad,

> Ugo (and others), have you thought about how to "cut" the elevation surfaces?
> Thinking parametrically, perhaps a function like: ((x, y)-->z)-->((x, y) 
> -->z)?
> Cutting planes could be parameters too.  Just rambling...

I may be a little confused, but my interpretation of what you want
is the intersection of an elevation surface with a plane, which is
a curve.  If the plane is horizontal, you can do this as follows.
Assume the elevation surface is "FlatField elevation" with MathType
((x, y) -> z) and the z level of the horizontal plane you want to
intersect is "float z_plane".  Then you can display the curve with
the following code:

  display.addMap(new ScalarMap(x, Display.XAxis));
  display.addMap(new ScalarMap(y, Display.YAxis));
  display.addMap(new ScalarMap(z, Display.ZAxis));
  ScalarMap contour_map = new ScalarMap(z, Display.IsoContour);
  display.addMap(contour_map);
  ContourControl control = (ContourControl) contour_map.getControl();
  control.setContourInterval(1.0f, z_plane, z_plane, z_plane);

Its possible that the last line might need to be:

  control.setContourInterval(1.0f, z_plane - 0.1f, z_plane + 0.1f, z_plane);

Of course, I may be mis-interpreting your question.

Cheers,
Bill

p.s.,
You could create a Real with MathType z and link it to the display via
DirectManipulationRendererJ3D, then also link the Real to a CellImpl
that would invoke

  control.setContourInterval(1.0f, z_plane - 0.1f, z_plane + 0.1f, z_plane);

where z_plane = the getValue() from the Real.  This would let you move the
plane up and down in the display by dragging the depiction of the Real.
(Note the Real would have a DataReferenceImpl that would link to display
and the CellImpl.)

----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI  53706
hibbard@xxxxxxxxxxxxxxxxx  608-263-4427  fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html

  • 1999 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the visad archives: