# Calculating volume of fill needed using QGIS

I have a project where I have to estimate fill volumes required to fill in small valleys. I have point data with elevations from GPS measurements from which I've created DEMS for each valley. I've tried using the raster volume tool to calculate volume below and above a set elevation value as well as from the DEM itself. But I'm only getting 0m3 volumes.

How can I calculate volumes need to fill in valleys?

Units of measure are m3 and AHD (Australian Height Datum) for elevation. I'm using EPSG:4326-WGS84 for my CRS.

• Can you post some more information like the units of measure of your surface model and the coordinate reference system of those data? Maybe some screenshots of the tool settings? Can you also include a screen shot of your dem and highlight the areas you are doing the calculations for?
– GBG
Nov 13, 2023 at 23:58
• Please provide the CRS you're working with.
– Erik
Nov 14, 2023 at 8:13
• Why is this question closed? It is clearly expressed and gis-related. Nov 15, 2023 at 9:21
• Your z values are in meters and your x and y are in degrees. Warp these data into UTM and try again and report back. Including some screen shots of your data, the dialog box, and the results might be helpful.
– GBG
Jan 12 at 15:43

# Solution: reproject

You use a CRS that is not suitable for measurements. Reproject to a local CRS (do not simply "change"/set the CRS), e.g. the UTM zone valid for your area of interest. See also here for backround.

# Details: why you get 0 values

### Wrong measurement units: degrees instead of meters or inches

The CRS you use, `EPSG:4326`, has layer units in degrees, so measurements are in degrees, too. So the distance in this CRS from Perth (`31.95° South, 115.85° East`) to a point on Australia's East coast with the same latitude (`31.95° South, 152.55° East`) is `152.55-115.85 = 36.7 [degrees]`. You see that this measurement makes no sense at all as ellipsoidal distance is ca. 3450 km (3450000 m). See here for background.

One degree of longitude can be as long as 111 km (at equator) or as short as 0 m (at the poles), see here for details. So you see that there is no meaningful conversion between distances in degrees length measurements that correspond more or less to real world distances.

### Small numbers

The same happened in your case: as measurments in degrees not only do not produce any meaningful measurement, they also produce much smaller numbers (36.7 vs. 3450000 in the case above). So if you have measurements of a few 100 or a few 1000 meters, depending where on Earth you are, measurements in degrees will produce values with two or more 0 digits after decimal points (like 0.0001...).

### Multiplying small numbers: values tend towards 0

If you now calculate a volume, you multiply twice (power of 3) - say `0.0001 * 0.0001 * 0.0001 = 0.000000000001`. As you see, the numbers tend to go towards 0. If you have decimal numbers with precision of 3 (as it is default setting in QGIS), the number will indeed be rounded to 0. So no wonder using `EPSG:4326` produces a value of 0 for volume.

• Thanks for that but when I do change the CRS to UTM (zone 55S in this case) the rasters end up in the ocean! I've changed the CRS of the project, the basemap and all raster to UTM 55S Nov 20, 2023 at 2:22
• Do not change CRS. Reproject! See: gis.stackexchange.com/a/383437/88814 Nov 28, 2023 at 0:04