HI Gaoming Fu,
> Recently some one told me that Moving average is another good way for
> interpolation. But I have no idea about it. Does VisAD suppor it?
>
> For example, for an area of 10 by 10 m, I have some irregular points (with x,
> y, and z).
> Now I want to draw the surface using a grid with cell size of 1 m. First I
> have to interpolate
> these grid points to get the z values (this can be easily done using
> WEIGHTED_AVERAGE
> and NEAREST_NEIGHBOR methods in VisAD), then draw those grid points. Now I
> want to try the so called "Moving average" approach. The purpose is
> to get a smooth surface so that it is very close to the real topography
> visually.
A moving average interpolation is an example of WEIGHTED_AVERAGE,
it is only a question of what the weights are. Applications can
control this by extending the Set class (or extending one of its
subclasses, which is generally easier) and overriding the
valueToInterp() and/or doubleToInterp() methods. Note the doubles
are used primarily for 1-D sets of time values.
An easier alternative might be an explicit analysis function that
you could write to take your IrregularSet, apply the moving average
interpolation, and construct a GriddedSet.
Good luck,
Bill
----------------------------------------------------------
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