Rich Shepard wrote:

The LiDAR source location has x- and y-resolution of 3 feet
(international) and several thousand cells east-west and north-south.
g.region -p for this location displays:

projection: 99 (unnamed)
zone:       0
datum:      ** unknown (default: WGS84) **
ellipsoid:  grs80
north:      1286590.24500872
south:      1240510.24500872
west:       634966.76150938
east:       664972.76150938
nsres:      3
ewres:      3
rows:       15360
cols:       10002
cells:      153630720

   When in the project location g.region -p produces:

projection: 99 (NAD_1983_HARN_StatePlane_Oregon_North_FIPS_3601_Feet_Intl)
zone:       0
datum:      nad83harn
ellipsoid:  grs80
north:      588219.90693215
south:      536993.58817534
west:       7524575.13218961
east:       7561596.20977101
nsres:      2561.31593784
ewres:      1851.05387907
rows:       20
cols:       20
cells:      400

   I want to understand why the nsres is now 2561+ feet, the ewres now
feet, and the numbers of rows and columns has decreased so drastically.

Looking forward to learning,

Helmut Kudrnovsky:

If it is about raster reprojection, there are hints in the r.proj manual
about region settings before applying r.proj.


A simple way to do this is to check the projected bounds of the input map in
the current location's projection using the -p flag. The -g flag reports the
same thing, but in a form which can be directly cut and pasted into a
g.region command.

Some observation: `-g` prints out in shell style, suitable for
`eval`uating.  The `eval` utility, for example, constructs a
command, from the given arguments (here, the ouput of `g.region -g`)
which is then executed by the shell.  See for example

A ready to copy-n-paste form is obtained via `-f` (this is a recent
addition by Moritz during the code sprint in Bonn).

Maybe the `-f` flag would be a useful addition to `r.proj` as well.


After setting the region in that way you might check the
cell resolution with "g.region -p" then snap it to a regular grid with
g.region's -a flag. E.g. g.region -a res=5 -p. Note that this is just a
rough guide.

A more involved, but more accurate, way to do this is to generate a vector
"box" map of the region in the source location using -d. This
"box" map is then reprojected into the target location with v.proj. Next the
region in the target location is set to the extent of the new vector map
with g.region along with the desired raster resolution (g.region -m can be
used in Latitude/Longitude locations to measure the geodetic length of a
pixel). r.proj is then run for the raster map the user wants to reproject.
In this case a little preparation goes a long way.

best regards
grass-user mailing list

Reply via email to