Good afternoon all!
I have ArcGIS 10.3 and ArcInfo License.
I am trying to improve my organizations network dataset by further defining connectivity. After following the steps here I got to step 20 and realized the roads file we use does not have elevation or z-levels. I understand you can use the feature vertices to points, then extract values by points (extract z-value from raster to endpoints of roads). However, I am confused as to how this would better define connectivity.
For example, at the point where 2 roads intersect, wouldn't that endpoint (the intersection) have only 1 elevation value? Am I supposed to get the z-value for one of those roads at a buffered distance away from the other?
In the end I want to be able to model overpasses and underpasses, which our network does not do currently.
First, here is the link to the 10.3 version of the tutorial you were following (it seems like you were using the old 10.0 version): Exercise 1: Creating a network dataset—Help | ArcGIS for Desktop
The information is mostly the same, but there are a few changes.
Regarding elevation fields, unless your data is already 3D, you probably don't want to use actual Z values for connectivity. Instead, you will use Z-levels to model bridges, overpasses, and tunnels. Please read this doc page to get a better handle on what network connectivity is and how it works: Understanding connectivity—Help | ArcGIS for Desktop
Basically, there are a couple of ways to control whether or not network edges actually connect to one another. There is a whole section on that page explaining Z-levels.
Something that is not obvious is that the elevations are not required to be "real" in Network Analysis. As they describe in the process you ran in step 20, one can use logical elevations besides real elevations. The important thing is that the values chosen for the segment ends are exactly the same for segments that should connect. Any values could be used, as long as the connecting values are the same. So by using logical elevations one could choose 1, 6, 2657429, or 99 - as long as the value is the same for the segments ends that connect. For example, in its simplest form, if one had a network with ground level and one level of overpasses, one could take a binary approach and do a whole network with just 0 and 1 for elevation values - a value of zero for ground level and a value of one for overpass segments.
One could also do a more rigorous analysis and derive the actual true elevations for each segment end. However, the catch is the values will still need to be exactly the same for each segment that connects, and this could involve a bit of cleanup.
If you are only after connectivity for Network Analysis, I'd suggest using logical elevations over true elevations.
Chris Donohue, GISP
Thank you both! I will try to go through all of our overpasses and assign them z-levels accordingly. A shame this could not be done through a semi-automated process, but it's not overly daunting. One of the ways my organization has dealt with this in the past, is to not allow junctions/vertices occur where there are overpasses/underpasses. Basically, many of them simply do cannot connect to other lines based on how they were drawn. So there should not be too many to go through and assign z-levels too.