# Identifying the steepest segment of a line in ARC GIS Pro

744
14
02-01-2021 09:18 AM
Labels (1)
New Contributor II

Hi, I am attempting to identify the steepest portions of a line in arcgis pro. I have a line feature with z values and a DEM. I have calculated maximum slope for the entire line using the "Add Surface Information Tool". Now I would like to identify the location of this maximum slope along the line. Is there a tool for this in ARC GIS Pro?

Thanks,

-Andrew

1 Solution

Accepted Solutions
MVP Esteemed Contributor

Your slopes will make no sense if your x and y are not in planar units (aka meters) since your elevations are in planar units (meters).

Slope has to be calculated using projected coordinates.  Either use a projected file (like a UTM or even an Albers or something local) or use the Add Geometry Attributes to get the coordinates in projected units before calculating slope

... sort of retired...
14 Replies
Esri Frequent Contributor

In ArcMap, there is the Deriving Steepest Path tool on the 3D Analyst toolbar that will do this workflow and there is an open ArcGIS Idea to add this to ArcGIS Pro here.  Not sure when it will be implemented.

MVP Esteemed Contributor

Is your line a segmented line or a continuous line?

Did you densify the coordinates of the line and does each point on the line have a Z value?

... sort of retired...
New Contributor II
Hi Dan,

It is a continuous line. Each vertice has a z value. And I just ran the
densify tool.
MVP Esteemed Contributor

Field calculator, python expression, should do the trick.  Convert to degrees if needed.  the 'abs' is if you don't care about uphill vs downhill

abs(!Shape!.firstPoint.Z - !Shape!.lastPoint.Z)/!Shape_Length!

Split Line At Vertices (Data Management)—ArcGIS Pro | Documentation if you want a finer resolution

... sort of retired...
New Contributor II

Dang! Thanks Dan. That worked great for calculating the maximum slope. Sorry, I didnt explain my question well enough initially. I am trying to identify the segments of a line that are of a problematic (high) slope angle. I need to identify these visually on the map so that I can go in and mend the line segment in these areas.

I am working on a trail planning proposal and need to ensure that there are no short pitch maximum grades over a certain grade.

Thanks so much for the info you have already provided, let me know if you have any ideas for how to select line segments above a particular grade.

MVP Esteemed Contributor

Assuming that you did this on the segmented (split at vertices) version of your lines

Query the table for slope above your grade threshold... they will appear selected on the map,

Or

Sort the table on the slope field in descending order, select the rows above some threshold and they will appear selected on the map

Or

Add another field and do a field calculation like

1 if !slope! > x.xxx else 0

Then query for the 1's and they will appear on the map

... sort of retired...
New Contributor II

OK, one more (hopefully) question: I am getting large values for average slope in the attribute table of my segmented line. like this....58957.520938. I cant seem to figure out the issue, any ideas? Thanks again for all the help

MVP Esteemed Contributor

rise over run yields 58957

It is a ratio so it isn't a real issue unless your run is short

The forward slash ... / ... probably has a similarly large slope value.

You are probably looking for certain rise over a certain run,

in other words, you want to delineate places that have more than a 5 meter rise over a 10 meter run, which is a 50% slope. a 100 m rise over a 10 m run.

So those really ridiculously large values are probably at locations where the points are really close together.  Highlight them and look at the map, they should be short relative to the elevation difference, or, you have quite the remarkable landscape ;)

... sort of retired...
New Contributor II

hmm, the runs are short but not that short. I think I must be making an error. Upon visual inspection it looks like the high valued line segments should not exceed a reasonable grade, I would be surprised if the max was 50%