Hanlie Pretorius wrote:

Hi Micha,

I tried your suggestion after setting the region to 20m instead of the
raster DEM's 25m.:

v.surf.rst input="dem_2628cc_...@c83" layer=0
elev="dem_2628cc_rst_elev" tension=40. segmax=40 npmin=120
dmin=9.998022 dmax=49.990111 zm  ult=1.0

This worked, but the differences between the raster DEM that I created
with r.in.xyz and the rst interpolated results are quite big - ranging
from -6.882202m  to +7.864258m.
From my understanding, r.in.xyz is best suited for cases where you have a very high density of x-y values (i.e. lidar data) and you want to create a raster where each cell will contain several of the original points. You can then choose to average all point values (or max, min, etc) to create the final cell value. On the other hand, v.surf.rst gives the best results when you have a density of points that is lower than the final raster resolution, and you want to interpolate between the original point values to create a higher resolution raster.
It also ran fairly slowly. Without adjusting the npmin paramter from
the default (300) to 120 it literally ran for hours (Win XP, 3GHz CPU,
1GB RAM). Adjusting npmin to 120 didn't seem to affect the error range
of the outcome much.
Yes, it's slow. How large a region? how many cells in the final raster?
Is there a reason why I should use r.surf.rst instead of v.surf.rst?

Or perhaps I should just import the points with r.in.xyz and leave the
DEM in this format for further applications (hydrological modelling)?
That should be fine providing:
1- You want the final raster at the same or larger resolution as the original points, and 2- You have at least one point value for *every* target raster cell. (Other wise you'll end up with cells with value '0')
Regards
Hanlie

2010/5/13, Micha Silver <mi...@arava.co.il>:
MS wrote:

If I follow correctly, instead of v.to.rast, you need to interpolate a
raster DEM from the points.   v.surf.rst produces nice results, but
there are other interpolation modules as well in the raster category.

That's the method I use also.
I start with:
v.in.ascii -z in=<ascii_file> z=3 out=vect_pts
This creates a 3D vector using the z column as the height values.
Now set the desired region:
g.region vect=vect_pts res=xxx
Choose the raster resolution that suits your needs. If the points in the
ascii file are at 25 m spacing, then you probably could interpolate at
10m-20m resolution (or better) with no problems.
Then:
v.surf.rst in=vect_pts layer=0 elev=dem ...
The layer=0 parameter indicates that you're using the 3D vector's z
value for elevation.
--
Micha

This mail was received via Mail-SeCure System.




--
Micha Silver
Arava Development Co. +972-52-3665918
http://surfaces.co.il


_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to