I have a layer of points and polylines and want to determine which points are road junctions. I currently have all start and end nodes within 3m of my road network as a layer. However I cannot determine which ones are simple joins between sections or what is a junction, e.g:

enter image description here

In the image above, the highlighted point is not a junction, but it is where one section ends and another begins. Is there a way to distinguish between these and points like the others in the image without manual checking?

  • 1
    Which of the three Desktop GIS products tagged, and which version, are you using?
    – PolyGeo
    Commented Jan 21, 2014 at 16:25
  • Currently using Arc, but also have access to MapInfo and QGIS
    – Alan Carr
    Commented Jan 21, 2014 at 16:28

2 Answers 2


I MapInfo Professional I would do it like this:

  1. Use Table > Buffer... to create a new table with buffers around your points. Creates buffer of 1 meter or less
  2. Use Table > Maintenance > Table Structure to add a new Integer column, let's call it NumLines, to your buffer table. You could also add this in step 1.
  3. Use Table > Update Column to count the number of lines intersecting your buffers, update the column NumLines with the value of "Count"
  4. Use Query > Select to query your buffer table where NumLines > 2

The result should now tell you where more than two lines intersect and so where you have junctions.

  • Thanks Peter, I encountered an issue with this method using highway network, sometimes a road section ends and another beings not at a junction, but they are just two concurrent lines. I got around this by combining all items in the line layer and disagreggating them. This may be useful to somebody else browsing this question.
    – Alan Carr
    Commented Jan 24, 2014 at 10:45
  • Not sure I understand the problem. If end line ends and only one begins, the number of objects counted should be only 2. Right? Using the process above you want to look for places where more than two lines meet at a point. In these cases there should be at least three lines meeting at the point. Or am I missing the point? Commented Jan 24, 2014 at 12:59

you can use a spatial join between your points and your lines. If you have more than 2 line segment on your joint points, it is a junction.

Note that there are also tools to remove the "false" junctions, such as "Unsplit line".

  • I think you meant "Unsplit Line" or "Dissolve" to remove false junctions.
    – klewis
    Commented Jan 21, 2014 at 23:45
  • @klewis you're right, my mistake. I've edited my post accordingly
    – radouxju
    Commented Jan 22, 2014 at 6:21

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.