Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

i am using arcgis 10.1

i want to calculate the shortest distance between a raster and another raster. i have a bathymetric raster and an underlying fault plane raster. for each bathy raster cell, i need to know the shortest distance to the underlying fault plane.

the bathymetry and the fault plane rasters are not planar nor horizontally level.

i am not trained in python and hope there is an existing tool that i could use (though i could learn python if i need to).

share|improve this question
The reference to "not...level" suggests you do not want to use Euclidean distance on the map. What distance do you want to use? Also, does "underlying" mean something special (what?) or do you just want to find the shortest distance between each bathymetry cell and the nearest fault plane? – whuber Jan 24 '13 at 19:12
i want to know the shortest distance between each raster cell of the bathymetry data set and the underlying subduction zone fault plane. the subduction zone fault plane is not planar and dips ("not level") at angles between 10 and 45 degrees beneath the bathymetry data. there is only one fault plane i am interested in determining this distance. because the fault is dipping at an angle, the nearest distance from any location on the sea floor is not the measurement vertically down to the fault plane, but at some angle from the vertical axis. this can be done in autocad, but i don't have it. – cascadia GIS Jan 24 '13 at 22:14
here is a map showing part of the area i am working on. the map shows deeper bathymetry as darker blue. the fault where it meets the sea floor is the orange line. the fault dips beneath the seafloor in the direction of the orange arrow. [link] – cascadia GIS Jan 24 '13 at 22:25
here is an oblique view of a subduction zone. one can see that the shortest distance between the seafloor above the fault and the fault is not measured along a vertical axis. [link]… – cascadia GIS Jan 24 '13 at 22:29
here is an illustration showing the relations between the bathymetry and the underlying fault... – cascadia GIS Jan 24 '13 at 22:37

Not elegant, but how about converting each raster into a set of points using Raster to Point? Then giving those points a z value using Feature To 3D By Attribute. Then find the closest fault point (near feature) to each bathymetry point (in feature) using Near 3D.

There are two potential downsides (1) there is a limit in how many points can be generated this way (2) this requires the 3D analyst extension. Python can get you around problem #1 by splitting the raster up, perhaps into sub-polygons, but you would need to be cautious of edges. I'd bet python could get around problem #2 using the x y for the points, the z now stored in the attribute table and some trig, but that is a lot of code to write if you aren't familiar with python and it could take a long time to run.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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