I have a situation where I have a line feature class and need to build a network out of it. The lines represent roads.

I wonder how I can model the intersections on the network. Almost all of them are going to be ordinary street intersections; someone coming down one street can either go straight or turn either way at the crossroads. However, a few of the streets are one-way, and there will be a few places where roads cross but do not connect to each other (for example, a street crossing an expressway on a bridge). How do I go about setting this property for an intersection?

I understand that, in ArcGIS 10.2, I need to have a point feature class for junctions (correct me if I'm wrong). Is there a way to create such a class without manually clicking on every single intersection? If there is a way, could I perhaps define an ordinary intersection (i.e., corner of two-way streets) as the default type and then manually define exceptions? That could be more manageable than manually digitizing every place where streets cross.

1 Answer 1


You are describing things that are actually handled in a couple of different ways in the network.

First, one way (also known as direction of travel) is handled by a one way attribute for the network edge (the lines). You can get more info about that from my answer at Does OSM data contain the direction of travel?

Next, when you talk about modeling intersections, the actual term you want is modeling turns. This is part of the network creation. To do it, you basically have to create a separate line file that contains the disallowed turning movements at an intersection. There's extensive info in the help files for this. Note that you don't have to model turns to account for one-way behavior; if an edge is marked as one way, turns won't be allowed counter to that regardless of the turn modeling information (if there even is any).

Now when you talk about crossings and connections, things get a bit more complicated. It's generally handled in two places - one, the actual line geometry and it's topology; and two, the connectivity policy for the network. My answer at Why isn't the service layer shape properly spread out? as well as the help files can give more detail on that, but basically how you draw the lines, where they start or end, and if they share a common vertex where they cross determines if you have an actual intersection (just because two lines cross doesn't mean they intersect in a network).

You are incorrect that you need a point feature class to serve as junctions. The junction layer is created automatically when building the network, and again is based on the geometry of the input lines and the connectivity policy.

I would highly recommend you take a read through the Network Dataset help files, or at least skim through the topic headlines, and do some of the Network Analyst Tutorial exercises, particularly one and two. I have a feeling that will answer a great number of your questions. Some of the other exercises cover how specific solvers work, and twelve goes into using some more advanced attributes and restrictions. Note that sometimes an exercise may cover things besides the main topic/heading, so they can all provide some valuable information on creating and using networks. You'll also probably want to investigate geodatabase topology, because those tools can be a tremendous help in cleaning up lines to prepare for building the network.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.