I have a feature class containing polygons and an associated raster with elevation data. I'm looking to calculate a single slope and aspect for each polygon within the feature class. I don't want a slope that represents an average of the raster cells. Rather, I ask you to picture a plane that is fitted to the topography of each polygon. I don't know the specific mathematics involved, but I can imagine it involves finding a plane that minimizes the aggregate difference, across all raster cells, between the actual elevation and the fitted elevation of the plane. I've attached a rather crude two dimensional view of alternative scenarios for the topography. For each scenario, there is a black shape to represent topography and a blue line to represent slope and aspect. Note that an average slope will not fit the bill, because I can envision many polygons with the same fitted plane, yet very different levels of ruggedness (average slope between adjacent raster cells). I am decent enough at ArcGIS to find my way to tools and sequences of tools to get things done, but I have not done programming or python scripts or whatever the more sophisticated users do to devise custom "tools".

enter image description here


Calculate a trend surface, then calculate the slope and aspect of the trend.


trend trend

  • Thank you for your response. This seems to work. However, my test method was to extract a single polygon from my feature class, convert the raster to points, and clip the points to my single polygon boundary; then run trend, slope, and aspect. This approach requires that I repeat the process (serially) to produce trend output for each polygon of my feature class. Is there a more efficient way to produce the trend output for all of my polygons? Thanks again. – mpone Nov 20 '17 at 13:16
  • @mpone, you'll need to iterate (in model builder or python/arcpy) and use ech polygon as a mask (Mask environment / Extract by Mask tool). This should be a new question if you need help with that. – user2856 Nov 20 '17 at 20:58

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.