FreeBSD Manual Pages
GDAL_CONTOUR(1) GDAL GDAL_CONTOUR(1) NAME gdal_contour - Builds vector contour lines from a raster elevation model. SYNOPSIS gdal_contour [--help] [--help-general] [-b <band>] [-a <attribute_name>] [-amin <attribute_name>] [-amax <attribute_name>] [-3d] [-inodata] [-snodata <n>] [-f <formatname>] [-i <interval>] [-dsco <NAME>=<VALUE>]... [-lco <NAME>=<VALUE>]... [-off <offset>] [-fl <level> <level>...] [-e <exp_base>] [-nln <outlayername>] [-q] [-p] [-gt <n>|unlimited] <src_filename> <dst_filename> DESCRIPTION The gdal_contour generates a vector contour file from the input raster elevation model (DEM). The contour line-strings are oriented consistently and the high side will be on the right, i.e. a line string goes clockwise around a top. --help Show this help message and exit --help-general Gives a brief usage message for the generic GDAL commandline op- tions and exit. -b <band> Picks a particular band to get the DEM from. Defaults to band 1. -a <name> Provides a name for the attribute in which to put the elevation. If not provided no elevation attribute is attached. Ignored in polygonal contouring (-p) mode. -amin <name> Provides a name for the attribute in which to put the minimum elevation of contour polygon. If not provided no minimum eleva- tion attribute is attached. Ignored in default line contouring mode. Added in version 2.4.0. -amax <name> Provides a name for the attribute in which to put the maximum elevation of contour polygon. If not provided no maximum eleva- tion attribute is attached. Ignored in default line contouring mode. Added in version 2.4.0. -3d Force production of 3D vectors instead of 2D. Includes eleva- tion at every vertex. -inodata Ignore any nodata value implied in the dataset - treat all val- ues as valid. -snodata <value> Input pixel value to treat as "nodata". -f <format> Create output in a particular format. Added in version 2.3.0: If not specified, the format is guessed from the extension (previously was ESRI Shapefile). -dsco <NAME>=<VALUE> Dataset creation option (format specific) -lco <NAME>=<VALUE> Layer creation option (format specific) -i <interval> Elevation interval between contours. Must specify either -i or -fl or -e. -off <offset> Offset from zero relative to which to interpret intervals. For example, -i 100 requests contours at ...-100, 0, 100... Further adding -off 25 makes that request instead ...-75, 25, 125... -fl <level> Name one or more "fixed levels" to extract, in ascending order separated by spaces. -e <base> Generate levels on an exponential scale: base ^ k, for k an in- teger. Must specify either -i or -fl or -e. Added in version 2.4.0. -nln <name> Provide a name for the output vector layer. Defaults to "con- tour". -p Generate contour polygons rather than contour lines. When this mode is selected the polygons are created for values between each level specified by -i or -fl or -e, in case -fl is used alone at least two fixed levels must be specified. The minimum and maximum values from the raster are not automati- cally added to the fixed levels list but the special values MIN` and MAX` (case insensitive) can be used to include them. Added in version 2.4.0. -gt <n> Group n features per transaction (default 100 000). Increase the value for better performance when writing into DBMS drivers that have transaction support. n can be set to unlimited to load the data into a single transaction. If set to 0, no explicit trans- action is done. Added in version 3.10. -q Be quiet: do not print progress indicators. C API Functionality of this utility can be done from C with GDALContourGenerate(). EXAMPLES Example 1 title Creating contours from a DEM gdal_contour -a elev dem.tif contour.shp -i 10.0 This would create 10-meter contours from the DEM data in dem.tif and produce a shapefile in contour.shp|shx|dbf with the contour elevations in the elev attribute. Example 2 title Creating polygonal contours from a DEM $ cat test.asc ncols 2 nrows 2 xllcorner 0 yllcorner 0 cellsize 1 4 15 25 36 $ gdal_contour test.asc -f GeoJSON /vsistdout/ -i 10 -p -amin min -amax max This would create 10-meter polygonal contours from the DEM data in test.asc and produce a GeoJSON output with the contour min and max ele- vations in the min and max attributes, including the minimum and maxi- mum values from the raster. { "type": "FeatureCollection", "name": "contour", "features": [ { "type": "Feature", "properties": { "ID": 0, "min": 4.0, "max": 10.0 }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ 0.5, 1.214285714285714 ], [ 1.045454545454545, 1.5 ], [ 1.045454545454545, 2.0 ], [ 1.0, 2.0 ], [ 0.5, 2.0 ], [ 0.0, 2.0 ], [ 0.0, 1.5 ], [ 0.0, 1.214285714285714 ], [ 0.5, 1.214285714285714 ] ] ] ] } }, { "type": "Feature", "properties": { "ID": 1, "min": 10.0, "max": 20.0 }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ 1.5, 1.261904761904762 ], [ 2.0, 1.261904761904762 ], [ 2.0, 1.5 ], [ 2.0, 2.0 ], [ 1.5, 2.0 ], [ 1.045454545454545, 2.0 ], [ 1.045454545454545, 1.5 ], [ 0.5, 1.214285714285714 ], [ 0.0, 1.214285714285714 ], [ 0.0, 1.0 ], [ 0.0, 0.738095238095238 ], [ 0.5, 0.738095238095238 ], [ 1.5, 1.261904761904762 ] ] ] ] } }, { "type": "Feature", "properties": { "ID": 2, "min": 20.0, "max": 30.0 }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ 0.954545454545455, 0.0 ], [ 0.954545454545455, 0.5 ], [ 1.5, 0.785714285714286 ], [ 2.0, 0.785714285714286 ], [ 2.0, 1.0 ], [ 2.0, 1.261904761904762 ], [ 1.5, 1.261904761904762 ], [ 0.5, 0.738095238095238 ], [ 0.0, 0.738095238095238 ], [ 0.0, 0.5 ], [ 0.0, 0.0 ], [ 0.5, 0.0 ], [ 0.954545454545455, 0.0 ] ] ] ] } }, { "type": "Feature", "properties": { "ID": 3, "min": 30.0, "max": 36.0 }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ 1.499999909090926, 0.0 ], [ 1.0, 0.0 ], [ 0.954545454545455, 0.0 ], [ 0.954545454545455, 0.5 ], [ 1.5, 0.785714285714286 ], [ 2.0, 0.785714285714286 ], [ 2.0, 0.500000047619043 ], [ 1.5, 0.500000047619043 ], [ 1.499999909090926, 0.5 ], [ 1.499999909090926, 0.0 ] ] ] ] } } ] } Example 3 title Creating contours from a DEM with fixed levels $ cat test.asc ncols 2 nrows 2 xllcorner 0 yllcorner 0 cellsize 1 4 15 25 36 $ gdal_contour test.asc -f GeoJSON /vsistdout/ -fl 10 20 -p -amin min -amax max This would create a single polygonal contour between 10 and 20 meters from the DEM data in test.asc and produce a GeoJSON output with the contour min and max elevations in the min and max attributes. If the minimum and maximum values from the raster are desired, the spe- cial values MIN` and MAX` (case insensitive) can be used: $ cat test.asc ncols 2 nrows 2 xllcorner 0 yllcorner 0 cellsize 1 4 15 25 36 $ gdal_contour test.asc -f GeoJSON /vsistdout/ -fl MIN 10 20 MAX -p -amin min -amax max This would create three polygonal contours from the DEM data in test.asc and produce a GeoJSON output with the contour min and max ele- vations in the min and max attributes, the values of these fields will be: (4.0, 10.0), (10, 20.0) and (20.0, 36.0). Example 4 title Creating contours from a DEM specifying an interval and fixed levels at the same time $ cat test.asc ncols 2 nrows 2 xllcorner 0 yllcorner 0 cellsize 1 4 15 25 36 $ gdal_contour test.asc -f GeoJSON /vsistdout/ -i 10 -fl 15 -p -amin min -amax max Creates contours at regular 10 meter intervals and adds extra contour for a fixed 15 m level. Finally turns areas between the contours into polygons with the contour min and max elevations in the min and max attributes, the values of these fields will be: (4.0, 10.0), (10, 15.0), (15, 20.0), (20.0, 30.0) and (30.0, 36.0). AUTHOR Frank Warmerdam <warmerdam@pobox.com>, Silke Reimer <silke@inteva- tion.de> COPYRIGHT 1998-2025 Jul 12, 2025 GDAL_CONTOUR(1)
NAME | SYNOPSIS | DESCRIPTION | C API | EXAMPLES | AUTHOR | COPYRIGHT
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gdal_contour&sektion=1&manpath=FreeBSD+Ports+15.0>
