See this image, an example output of the ArcGIS Surface Difference tool (gives cut/fill volumes):

Edges of Surface Difference tool output are invalid

I have occasionally come across the illustrated problem where the output does not cover the full extent of where the surfaces overlap. The black line is the edge of the two TINs submitted to the Surface Difference tool. One TIN is the topographic surface, the other is the bottom of oil surface from dip data. In the red circled areas in the image you can see where the tool output polygon does not extend to this edge. Both TINs had been soft clipped with this polygon before being used in the tool. I have tried hard clipping them, same problem. One of them is a topographic surface and so is valid outside of the clipping polygon. I therefore tried it without first clipping this TIN. Same issue. Another example:

enter image description here

When I clipped both surfaces to the same extent the problem was actually reduced but did not disappear, and the volume reported increased, to me indicating that there was indeed a problem introduced by the inconsistencies at the output edge. I ended up being able to fix this by buffering the wet area polygon by 0.01m. Then I softclipped the bottom of oil surface with this. Problem solved:

enter image description here

What is the reason for this solving the problem? I'm guessing it is because the two surfaces intersect, rather than one meeting the other. Through intersecting it is clear what lies between the two surfaces. If they just meet, and the way that this is expressed is influenced by rounding or something else to do with number precision, perhaps the tool will find a smaller area within which the two surfaces overlap?


  • I should say that even buffering by 0.01m does not always solve the problem. We were doing it on a bunch of 66 soil pile footprints yesterday and 3 or so of them still had some slices missing. It fixed the problem for the most part though, without buffering the footprint polygons there were parts missing from the surface difference output for most piles.
    – ndthl
    Commented Oct 16, 2014 at 7:25

1 Answer 1


Could it be that the tool you're using calls the InterpolateShape function under the hood, the docs of which are: http://resources.arcgis.com/en/help/main/10.1/index.html#/Interpolate_Shape/00q90000006m000000/

The sample_distance parameter which: By default, this is a raster's cell size or a TIN's natural densification.

In the GUI tool you use, is there an option to use a smaller sample_distance?

Also, to ensure your sample_distance value gets used, the vertices_only will default to use DENSITY so make sure it's not set to VERTICES_ONLY, which will ignore your 'custom' sample_distance.

My disclaimer is that I don't have ARC, but in many of these tools, the process you do in the application reflect the underlying code. Hopefully there's a sample_distance setting in your tool...if there is, try altering it! Good luck.

  • Thanks for trying at least! I was beginning to think no one knew anything about this. I'll have a look at what you suggest. You're right about looking under the hood... although I'm not sure that for out of the box tools like this one they allow us to see the code or what other tools it calls. I guess what you're talking about is an environment setting. I shall check and get back to you.
    – ndthl
    Commented Oct 19, 2014 at 4:14
  • Ok I had a look finally at the tool, there are no settings like you suggest. Someone from a the local ESRI support team here in Kuwait said to check the processing extent and request a raster output then check for null values in the raster. I ensured the processing extent matched at least, or more than, the study area but the same extent issues persisted. Additionally, the IS NULL output on the raster showed a 1 in the Value field and 12 in the Counnt field. Not terribly sure what this means.
    – ndthl
    Commented Oct 30, 2014 at 14:43

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.