Hej,
I am using ArcGIS Pro 3.1 and would like to do a network analysis. My source layer is a feature class of polylines.
Creating the network dataset, making the OD cost matrix layer, adding locations and solving it does work. However the results presented are incorrect.
What is incorrect?
- some origins are not adressed
- some destinations are not addressed
-> therewith results are not alsways showing the truly shortest path, as e.g. the closest destination is not considered.
I am attaching a picture to clarify the issue.
Pic1:
The yellow points are the origins, green squares are the destinations. We take the example of origin X1. As you see X1 is connecting to a destination far away, but not connecting to destination Z1, which is close by, although the network edges E1 and E2 are shown.
Pic2:
A closer look to the network does reveal that the edges are not connected. I tested the two line features seperatly for intersection. The tool does return an empty result.
Pic3:
The pictures are showing how the edges E3 and E4 are connected through J1. Interestingly I tested the two line features in questions seperatly for intersection and the tool does also return an empty result aswell.
This leaves me with the question of what is the difference between the two examples. Why does the second example end up as a proper network connection and the first one does not. How can I alter my network to let it acknowledge the connection in example 1. Is there a tool / an automasation to fix this ?
I did already try to run the analysis with different connectivity policies (EndPoint / Any Vertex). This did unfortunatly not change the problem.
I would be truely grateful if someone has an idea of what the problem is and probably even how to fix it.
Thanks a lot in advance!
Best regards,
Jana
Solved! Go to Solution.
Hello. Probably E1 and E2 are not connected because there is neither an endpoint nor a vertex at the location where E2's endpoint intersects with E1. Any Vertex connectivity will not work if there is no vertex at that location.
You can add vertices at the locations of all intersections by running the Integrate tool with a 0 XY tolerance. (Be careful because that tool alters the input data - you might want to make a backup copy first. Another thing to watch out for is if you overpasses and underpasses or other situations where you don't want the roads to connect at intersection points.)
You will need to use Any Vertex connectivity for this configuration since the features will not be split at intersections but will simply have vertices.
Hello. Probably E1 and E2 are not connected because there is neither an endpoint nor a vertex at the location where E2's endpoint intersects with E1. Any Vertex connectivity will not work if there is no vertex at that location.
You can add vertices at the locations of all intersections by running the Integrate tool with a 0 XY tolerance. (Be careful because that tool alters the input data - you might want to make a backup copy first. Another thing to watch out for is if you overpasses and underpasses or other situations where you don't want the roads to connect at intersection points.)
You will need to use Any Vertex connectivity for this configuration since the features will not be split at intersections but will simply have vertices.
Hello Melinda,
thank you so much for your fast help!
Running the tool integrate with a 0 XY tolerance did the trick and destination Z1 is now addressed properly within the analysis.
E1 was actually not having a vertex at the endpoint of E2.
I had tried the integrate tool before, but without setting the tolerance, resulting in no change.
The feature layer altered by integrate and any vertext connectivity are working.
Thanks a lot! Have a great day