Slope for streets

3868
5
Jump to solution
01-28-2012 06:26 AM
MarkusScharrer
New Contributor
Hi,

I'm trying to combine slope values with street features in order to use them as a cost factor for a network analysis. I've got a DEM10 and calculated the slopes in degree with the slope tool.
Alexey from Network Analysis gave me the following tips:
-reclassify the slope file
-use raster to feature (polygon) after that

But I don't know if it makes sense to reclassify, convert to feature and use the intersect tool to combine the slope polygonswith the street features. The problem i see with this is that the streets will oftentimes go alongsides the slope and not directly up the hill. But the street features will still get th values of the slope for the specific polygon even if the slope doesn't run in the direction of the street itself.

I've tried to go another way by:
normal DEM -> convert to integer -> raster to feature (polygon) -> intersect with street features -> convert back to raster -> calculate the slope for that file.

I'm getting really weird results for that tho...

Which way do you think makes more sense??

Thanks in advantage,
Markus
0 Kudos
1 Solution

Accepted Solutions
ChrisSnyder
Regular Contributor III
Take your road arcs, export the start and end nodes (aka BOTH_ENDS) using the FeatureVerticesToPoints_management tool. Note that the points are tagged with the OID of the road segments. Using the Sample tool from SpatialAnalyst, get the elevation values of the street points. Note that output table has the OIDs of the points (but not the streets themselves). You now have the length of the street and the rise. Slope in % = rise / run.

Requires ArcInfo and SpatialAnalyst license, but note this road slope analysis is also doable with other tools, there would just be more steps!

View solution in original post

0 Kudos
5 Replies
ChrisSnyder
Regular Contributor III
Take your road arcs, export the start and end nodes (aka BOTH_ENDS) using the FeatureVerticesToPoints_management tool. Note that the points are tagged with the OID of the road segments. Using the Sample tool from SpatialAnalyst, get the elevation values of the street points. Note that output table has the OIDs of the points (but not the streets themselves). You now have the length of the street and the rise. Slope in % = rise / run.

Requires ArcInfo and SpatialAnalyst license, but note this road slope analysis is also doable with other tools, there would just be more steps!
0 Kudos
MarkusScharrer
New Contributor
Hey Chris,
Thanks for your quick answer!

I still have a problem when trying to figure out how to calculate the rise from the different elevation values of the points.
Is there a quick way to calculate the elevation difference between start- and endpoints?
I've joined the Sample table with the vertices shapefile so far.
Also, once I'm done with that, do i calculate the slope values with the field calculator in the attribute table? I've tried using the Raster calculator, but that one won't accept anything besides raster files (hence the name of the tool i guess)

Thanks,
Markus
0 Kudos
MarkusScharrer
New Contributor
hey,
I already found a (pretty complicated) way to solve the issue.
Thanks again for your help! 🙂
0 Kudos
ChrisSnyder
Regular Contributor III
Is there a quick way to calculate the elevation difference between start- and endpoints?


Nope - my outlined method is probably the fastest, unless you can find a script that someone wrote for the specifc purpose.

Glad you got a solution. And as you proabably figured out there are some more detailed steps I neglected to mention...
0 Kudos
TimothyHales
Esri Notable Contributor
In ArcGIS 10 you can use the Add Surface Information tool (3D Analyst) to add slope information to polylines. The tool will add the following attributes for polylines�??z minimum, z maximum, z mean, surface length, minimum slope, maximum slope, average slope.