Creating elevation contours
A contour is an isoline along the same elevation in a dataset. Contours are usually stepped at intervals to create an intuitive way to represent elevation data, both visually and numerically, using a resource-efficient vector dataset. Now, let’s look at another way to visualize the elevation better using contours.
The input is used to generate contours in our DEM and the output is a shapefile. The algorithm (marching squares: https://en.wikipedia.org/wiki/Marching_squares) that’s used to generate contours is fairly complex and very difficult to implement using NumPy’s linear algebra. In this case, our solution is to fall back on the GDAL
library, which has a contouring method available through the Python API. In fact, the majority of this script just sets up the OGR library code that is needed to output a shapefile. The actual contouring is a single method call named gdal.ContourGenerate()
. Just before this call, there are comments...