## NAME

r.surf.area - Surface area estimation for rasters.
(GRASS Raster Program)

## SYNOPSIS

r.surf.area
r.surf.area help
r.surf.area input=name [vscale=value]

## DESCRIPTION

r.surf.area Calculates area of regular 3D triangulated points (centers of cells) in current region by adding areas of triangles. Therefore, area of a flat surface will be reported as (rows + cols -1)*(area of cell) less than area of flat region due to a half row and half column missing around the perimeter.

NOTE: This calculation is heavily dependent on data resolution (think of it as a fractal shoreline problem, the more resolution the more detail, the more area, etc). This program uses the CURRENT GRASS REGION, not the resolution of the map. This is especially important for surfaces with `NULL` values and highly irregular edges. The program does not [currently] attempt to correct for the error introduced by this edge effect.

This version actually calculates area twice for each triangle pair, keeping a running minimum and maximum area depending on the direction of the diagonal used.

<LH>Reported totals are:
1. "Plan" area of `NULL` values within the current GRASS region
2. "Plan" area within calculation region (rows-1 * cols-1 * cellarea)
3. Average of the minimum and maximum calculated 3d triangle area within this region
4. "Plan" area within current GRASS region (rows * cols * cellarea)
5. Scaling of calculated area to current GRASS region (see NOTE)

The program will be run non-interactively if the user specifies the program parameter values and desired flag settings on the command line, using the form:

  r.surf.area input=name [vscale=value]

Alternately, the user can simply type r.surf.area on the command line, without program arguments. In this case, the user will be prompted for needed inputs and option choices using the standard GRASS user interface described in the manual entry for parser .

### Parameters:

input=name
  Name of an existing raster map layer to use for the calculation.
vscale=value
  Optional vertical scaling value to use in surface area calculation.

## NOTES

r.surf.area works best when the surface being evaluated extends to the edges of the current GRASS region and the cell resolution is small. Surfaces which are especially long and thin and have highly irregular boudaries will tend to have underestimated surface areas. Setting a high cell resolution (small area) will greatly reduce this impact, but will cause longer processing times.

r.surf.area

## SEE ALSO

r.surf.idw
r.surf.idw2
s.surf.idw
r.surf.fractal
r.surf.gauss
r.volume
v.to.rast
r.slope.aspect
g.region
parser

## AUTHOR

Bill Brown, USACERL December 21, 1994

Modified for floating point rasters and `NULL` values by Eric G. Miller (October 17, 2000)

Last changed: $Date: 2002/12/11 18:00:43 $