5

How do I calculate the area between certain contour lines (e.g. 0-800, 800-1400, 1400-2100...) from a given shapefile. What I need is the area of the certain elevation levels.

  • shapefile is from vogis-data download (via FTP vogis.cvn.at - Gelaendemodell - Hoehenschichten - Vlbg), vector polylines, altitude is ranging from 200 - 3300 m, but not equidistances

  • lines to polygone seems not to work (too complex/large data?)

  • fieldcalculator $area did not (only lines?)
  • there is no DEM in raster format
6
  • 2
    How about you create a DEM from your contour lines? After that you could reclass your raster in the desired elevation levels, and then calculate the area (n_of_ pixes * pixel_size²) for each class. Commented May 6, 2013 at 18:49
  • Thanks, but creating DEM did not work. Tried it via SEXTANTE but always got the error "could not load layer"...
    – user16032
    Commented May 8, 2013 at 9:22
  • Try using Interpolation tool in Raster Menu. Commented May 8, 2013 at 16:11
  • 2
    There is a good reason you have been frustrated, because this cannot be done without more information: please see the analysis at gis.stackexchange.com/questions/61550/….
    – whuber
    Commented Nov 8, 2013 at 17:14
  • Typical problem that can be solved using topology. Import your contour lines as border lines into GRASS, generate centroids and build topology to get polygons.
    – Zoltan
    Commented Oct 7, 2015 at 6:10

2 Answers 2

1

What about building a bounding line in your contour dataset (a "box" that outlines and intersects your contour dataset).

Then selecting that line along with your demarcation elevation contours (i.e. 0, 800, 1400, 2100,...) and building a polygon feature from that.

Then calculate the areas of the resulting polygons (if those values aren't inherent in the polygon data already).

Incidentally the resulting polygons can be used, with or without transparency, to symbolize the elevation for visual interpretive uses.

4
  • Good try: but please see gis.stackexchange.com/questions/61550/… for why this can produce erroneous results.
    – whuber
    Commented Nov 8, 2013 at 17:15
  • @whubber - right, and both answers (mine and your link) don't account for actual area (acres or hectares) but assumes both that the terrain is smooth/level between the demarcation elevations. Secondly, since elevation is continuous and (presumably) the AOI isn't, there is no way to avoid the problem you highlight. Lastly, this problem isn't a problem for the question "user16032" asked. So my answer still stands, right?
    – user23715
    Commented Nov 8, 2013 at 18:22
  • It depends on what "between" contour lines might mean: the natural interpretation is in terms of elevation rather than just the spaces on the map. Because the elevation in some cases cannot be determined, the question is not objectively answerable without additional information or assumptions (implying your solution may give incorrect results). Such information suffices to reconstruct (an approximation of) the original DEM, with which questions about the plan area, actual surface area, and other elevation-related aspects can be answered.
    – whuber
    Commented Nov 8, 2013 at 20:28
  • Well, I try not to read too much into the question. All your points on this page and on the other thread of yours you link to are, so far as I can tell, spot on. But that's a lot of work to answer a question not asked. And without feedback from "user16032" it's hard to argue he needs to put in the effort needed using your better method.
    – user23715
    Commented Nov 9, 2013 at 2:59
1

If line to polygon does not work, try checking the topology and look for mistakes. Contour lines are not always closed, you could try closing them before you try the line to polygon.

Not the answer you're looking for? Browse other questions tagged or ask your own question.