Skip to content

r.contour

Produces a vector map of specified contours from a raster map.

r.contour [-t] input=name output=name [step=float] [levels=float [,float,...]] [minlevel=float] [maxlevel=float] [cut=integer] [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

r.contour input=name output=name

grass.script.run_command("r.contour", input, output, step=None, levels=None, minlevel=None, maxlevel=None, cut=2, flags=None, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("r.contour", input="name", output="name")

Parameters

input=name [required]
    Name of input raster map
output=name [required]
    Name for output vector map
step=float
    Increment between contour levels
levels=float [,float,...]
    List of contour levels
minlevel=float
    Minimum contour level
maxlevel=float
    Maximum contour level
cut=integer
    Minimum number of points for a contour line (0 -> no limit)
    Default: 2
-t
    Do not create attribute table
--overwrite
    Allow output files to overwrite existing files
--help
    Print usage summary
--verbose
    Verbose module output
--quiet
    Quiet module output
--qq
    Very quiet module output
--ui
    Force launching GUI dialog

input : str, required
    Name of input raster map
    Used as: input, raster, name
output : str, required
    Name for output vector map
    Used as: output, vector, name
step : float, optional
    Increment between contour levels
levels : float | list[float] | str, optional
    List of contour levels
minlevel : float, optional
    Minimum contour level
maxlevel : float, optional
    Maximum contour level
cut : int, optional
    Minimum number of points for a contour line (0 -> no limit)
    Default: 2
flags : str, optional
    Allowed values: t
    t
        Do not create attribute table
overwrite: bool, optional
    Allow output files to overwrite existing files
    Default: False
verbose: bool, optional
    Verbose module output
    Default: False
quiet: bool, optional
    Quiet module output
    Default: False
superquiet: bool, optional
    Very quiet module output
    Default: False

DESCRIPTION

r.contour produces a vector map of specified contours from input raster map. Contours can be produced using a comma-separated list of values in levels, or at some regular increment using the step parameter, using minlevel and maxlevel as minimum and maximum contour values, respectively. If no minlevel or maxlevel is specified, the minimum and maximum cell values in the input raster map will be used.

NOTES

r.contour will either step through incremental contours or produce contours from a list of levels, not both. If both a list of levels and a step are specified, the list will be produced and the step will be ignored.

Zero is treated as a valid data value by r.contour.

If a contour level exactly matches a category value in the raster map, the contour line may backtrack on itself, causing illegal arcs to be produced in the output vector map.

The optional cut parameter allows the user to specify a minimum number of raster cells eligilble to be included in a contour line written to the output vector map. It acts like a filter, omitting spurs, single points, etc., making the output more generalized.

EXAMPLES

In the Spearfish dataset, produce a vector contour map from input raster elevation.dem with contour levels from 1000m to 2000m, 100m contour step, and a minimum of 200 input raster points contributing to the contour line:

r.contour input=elevation.dem output=elevation_dem_contours \
          minlevel=1000 maxlevel=2000 step=100 cut=200

For an example of using levels with r.contour this example uses the elevation map from the North Carolina database:

g.region raster=elevation
r.contour in=elevation out=contours levels=60,90,120,150 --o
d.mon wx0
d.rast elevation_shade
d.vect contours color=red

r.contours example
Contour lines shown on shaded terrain map

For an example of using steps with r.contour this example uses the LiDAR data derived elevation map from the North Carolina database:

g.region raster=elev_lid792_1m -p
r.contour input=elev_lid792_1m output=elev_lid792_1m_contours \
          minlevel=100 maxlevel=150 step=10

AUTHORS

Terry Baker, U.S. Army Construction Engineering Research Laboratory
3/2001: cut parameter and fixes by Andrea Aime (aaime@libero.it)

SOURCE CODE

Available at: r.contour source code (history)
Latest change: Friday Mar 07 07:39:48 2025 in commit e1e37d8