Re: Parametric Function with Lines Instead of Points

Hi Ken-

It is all very confusing, but once you wrap your mind around
it, it's an incredibly powerful and flexible data model.

Here's the way I try to think of it.  A domain can have a dimension
(number of components of the RealTupleType) and a manifold dimesion
(the structure of that data).  For a given manifold dimension:

1 = line
2 = plane
3 = volume

That's an oversimplification, but it's how I rationalize what
to use.

So a Gridded2DSet (dim=2) with a manifold dimension = 1 is useful
for depicting things like map lines. The points have 2 dimensions
(lat,lon), but the single manifold dimension gives them the
structure of lines connecting the points.  A Gridded3DSet on a
2D manifold would be a slice through a volume (i.e. a plane).

A LinearNDSet inherently has the same manifold dimension as
its domain dimension, thus you can't use it to depict a crosshair
which is a 2 or 3D set on a 1D manifold.

As for wrapping your head around this all, at Unidata we say that
when you can say from memory (paraphrased from the FlatField javadoc):

A FlatField range type may be either a RealType, a RealTupleType, or a TupleType of RealType-s and RealTupleType-s.

AND understand it, you'll have reached that VisAD enlightenment. ;-)


Kenneth Evans wrote:
It is more that it is counterintuitive to me to be using ((x,y,z) -> t) rather than (t -> (x,y,z)). However, I guess the same thing appears on the plot. The reason for reversing the order seems to be to get the correct topology. So I now have a recipe, but I am not sure I understand what is happening. Is it written up somewhere what has and doesn't have a topology and what that topology is. I haven't come across it.

It is also interesting about the manifold dimension = 1. It seems to me that the domain, which is the part that goes with the Gridded3DSet, has manifold dimension = 3, and that it is the range that has manifold dimension = 1. (When using your order.) Or am I just confused.

I did try to make a cursor consisting of two crossed lines recently. I noticed that I needed to use a Gridded2DSet, whereas a Linear2D set should have served. I believe the later gave points, not lines. I assume this is the same problem. (I ended up using a shape.)

     Thanks for the information,

Don Murray                               UCAR Unidata Program
dmurray@xxxxxxxxxxxxxxxx                        P.O. Box 3000
(303) 497-8628                              Boulder, CO 80307

To unsubscribe visad, visit:

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