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: is there a simple way to create a surface from set of 3D points?

  • To: Donna L Gresh <gresh@xxxxxxxxxx>
  • Subject: Re: is there a simple way to create a surface from set of 3D points?
  • From: Bill Hibbard <billh@xxxxxxxxxxxxx>
  • Date: Fri, 8 Nov 2002 15:22:09 -0600 (CST)
Hi Donna,

> I am just getting started using VisAD and what I would like to do is to
> create a surface representation (triangles) of a set of *3D* points. Is
> there a straightforward way to do this? It seems that the Delaunay methods
> are going to want to create a tetrahedralization for me instead. I expect
> my 3D points to define a gently sloping surface in 3D (something like a
> topographic landscape). Are there any examples of doing this?

If one of your coordinates is a function of the other two,
say Z values depend on X and Y values, then construct an
array float[2][number_of_points] consisting of the X and
Y values and pass it to the constructor:

  DelaunayWatson delan = new DelaunayWatson(float[][] samples);

Then construct an array float[3][number_of_points] consisting
of the X, Y and Z values and pass it to the constructor:

  Irregular3DSet set = new Irregular3DSet(type, samples,
                             coord_sys, units, errors, delan);

Note coord_sys, units and errors can all be null, and type is
a RealTupleType "(x, y, z)". This will construct a set of
triangles in 3-D.

If there is no dependency of one coordinate as a function of
the other two, then you need to define your own triangle
topology as a DelaunayCustom.

Good luck,
Bill


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