How can I get the z-Value of given xy-Values within an IPolygon?

I have an IPolygon, which is zAware. For given xy-Values I want to get the z-Value of the Polygon-Shape. What I want to do is something like intersecting the Polygon with an vertical line and getting the Intersecting Point.

Has anyone an idea how to do something like this?


There is no Inbuilt way to do this. A z-aware polygon, is fundamentally not 3 D in itself. What is Z Aware are the vertices. So for a point inside the polygon (i.e. inside in the sense of X-Y domain) no Z value is defined.

(If you having problems, visualizing this, imagine a z aware polygon that does not lie in one plane. Some points are on that plane, some above and some below. For this polygon, only the vertices have a defined z value, and not any points in the interior.)

So you can proceed in several ways:

  1. If you are assuming that the vertices are sort of spot heights, then the inside of the polygon is the surface in between the points is the 3 dimensional surface which is defined by these spots heights.
  2. Another way would be to convert this geometry into a Multipatch, where the surfaces are defined as triangles. There you can find the z value at any point.
  • Thank you for your Answer. Well, I already suspected that it won't go easy :) Now I converted my polygon to a multipatch and got a new Problem. How to get the z-Value within the multipatch? You wrote, that it is possible to find the z-Value at any point within the triangle. But how? – user3668 Jul 15 '11 at 9:43
  • Are you on ArcGIS 10? You can use help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/… – Devdatta Tengshe Jul 15 '11 at 14:35
  • Yes, I'm on AG10. – aja Jul 18 '11 at 4:57
  • But I think, this link won't help me. I don't have a whole multipatch featureClass, only several geometries. Is there no other way then using Geoprocessing? GP seems to be yery slowly in batch jobs, so I would prefer not to use it. Thank you for your help ... – aja Jul 18 '11 at 5:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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