Hi,
I've done this but I can't say that it is exactly easy. Here'e the gist:
Create a Real (for the axis perpendicular to your slice) to represent
the slice value. Add it to the Display with a
DirectManipulationRenderer. The resulting point will be your "handle" to
drag your slice. (Add it with ConstantMaps to the other two axes to
position it along the edge of the box.)
Create a Cell (with the Real's reference) which has the action of
reslicing your data: create a Gridded3DSet of the type (latitude,
longitude, altitude) with a manifold dimension of 2 and the constant
dimension with your Real (slice value). Use that set to resample your 3D
data and display the resulting Field.
This is terribly inefficient since a resample happens everytime a
manipulation of your Real is detected. It works surprisingly well if
your slice doesn't require high resolution.
I suspect there is a much better way using an index (one for each slice)
in your MathType and a map to Display.SelectValue but I haven't looked
into this, yet.
index -> ((latitude, longitude, altitude) -> (pressure, temperature,
...))
Let me know if you want more details.
Regards,
Doug
Mathias Stümpert wrote:
>
> Hi together,
>
> I need a possibility to extract slices out of my 3D-Dataset. I think of
> a layer whose edges can be dragged along the axes. Is there an easy way
> to do this with VisAD?
>
> My MathType looks like this:
> ((latitude, longitude, altitude) -> (pressure, temperature, ...))
--
*----------------------------------------------------------------------*
| Doug Lindholm, Software Engineer | E-mail: lind@xxxxxxxx |
| Research Applications Program | Phone: 303-497-8374 |
| National Center for Atmospheric Research | |
| P.O. Box 3000 | There's no place |
| Boulder, Colorado 80307-3000 | like $HOME |
*----------------------------------------------------------------------*