Re: Questions about Streamlines, FlowControl, and FlatField.resample()

Hi Olav,

> . . .
> This is no problem with flow rendering. With the Ball data this error in
> the far field occurs only one time. I have used the picture only for
> clarification. There are two problems. The cutplane arround the surface
> shows always errors (see error_in_cutplane_rgb.png).

This isn't really an error - just the resampling quantization.
Resampling to a GriddedSet the edges of the no-data area will
always look gridded ike that. The only suggestion is to increase
the resolution of the grid, to make the grid teeth smaller.

> . . .
> I can send you the test program. That is no problem. Problem is the data
> file. The file with the ball is also now problem (i have send it to you
> several month ago "Sphere.plt"), but their you can see normally only the
> error near the surface. With the data for the complex geometries it is
> different. I am not allowed to send out this data. Let me hnow, if you
> are interested in the test case with the ball. If you don't have the
> data file anymore then i will send this also (arround 4MB compressed) to
> you.

I no longer have the Sphere.plt file. I'll look into the problem
if you send me the file plus a program I can run that generates
the problem. Please don't CC visad-list since the file is big.

> One last question. Due to the problems with the cutplane i thought about
>   a resample method that uses an analytic plane to cut through the
> volume. The output grid then will have the intersection points between
> the analytic plane and the grid edges as it's domain. Where do you think
> is the best place to do this? Generating the cutplane grid in a
> preprocessing tasks and then use FlatField.resample() or should it be
> better to overide the resample method.

I assume you mean a plane specified by an equation like
ax+by+cz=d by 'analytic plane'. This is an interesting
idea, although the implementation will be a bit tricky
(as you say, finding the intersection of edges of the
Irregular3DSet's tetrahedra with the plane, then
interpolating values between the vertices at each end
of those edges). This wouldn't fit naturally in resample().
I'd suggest just calling FlatField.getDomainSet() to get
the Irregular3DSet, then get its set.Delan (which will be
its Delaunay), then use Delan.Tri and possibly Delan.Edges
plus set.getSamples() to do the computational geometry
to derive the cutplane grid as an Irregular3DSet with
manifold dimension = 2 (the intersection of edges of the
Irregular3DSet's tetrahedra with the plane will not produce
a GriddedSet).

Good luck,
Bill