I am currently working with parcel data and a raster slope analysis in % change I created with DEM data. I symbolized the slope analysis discrete 0-2.5%, 2.5-5%, 5-7%, 7-12%, 12+% and overlayed it with my parcel data. I want the parcels to have a "Buildable Area" attribute calculated by subtracting the raster area that has values of 12+% from the parcels. I also have a wetlands polygon layer and I was able to subtract from the polygon area.

How do I do the same with raster?

This is in QGIS.

1 Answer 1

  1. Use the Reclassify by table tool in order to isolate the classes you want to subtract.

    Create a reclassification table with only one row:

    Table: (Minimum: 0 Maximum: 12 Value(New): 1

    Output no data value: 0

    Range boundaries: default

    Use no data when no range matches value: True

  2. Now you have a raster with only the "Buildable Areas" with the value 1, lets use the Polygonize (raster to vector).

  3. Finally you have the polygon with "Buildable Areas" that you can use to clip the parcels polygon layer.

  • I like your workflow, although I went a different route. I clipped my slope analysis to the parcels, next I selected via filter for every raster cell with % change slope >= 12, next I extracted by selection. This gave me a polygon layer of all of the raster cells within my parcels that are unbuildable. Now I just need to "subtract" the sum of all of the unbuildable polygon cell areas from the area of the parcel. Any ideas on how to do this?
    – user207315
    Jun 16, 2022 at 20:09
  • Create a field in the unbuildalbe areas layer and fill it with some data, then intersect the parcels layer with unbuildable areas layer, select from the intersected layer every feature with data in the field that you created and finally remove all selected features.
    – Mayo
    Jun 16, 2022 at 20:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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