[GIS] Find intersections of roads in QGIS

intersectionqgis

I want to get points at the intersections of the road network. I have a single shapefile. It contains 100k features and some of them continue each other.
enter image description hereRoads shapefile

As can be seen from 2 pictures above, the selected feature doesn't have any intersections between its neighbors, while it has them from QGIS's point of view. I've tried the solution from Find intersection point in a road network of line shapefile:

  1. Dissolve without attribution the original road network shapefile, which contains 100k features to get one feature containing all roads. It worked perfectly. As a result, I have a new layer with one feature.
  2. Multipart the new layer to Singleparts. After this step I get a new layer, but with the same problem: the one road may have several segments. That's why the Line Intersection doesn't work well.

enter image description here

As you can see, QGIS made an intersection point at the selected road segment, while it must not be done. Any suggestions?

Best Answer

I found a better and robust solution. Tested using QGIS 3.14. Run the following tools from the Processing Toolbox

  1. Dissolve All (don't select any attribute). You get all features merged as a single multilinestring
  2. Multiparts to Singleparts.
  3. Line Intersections (select the same singleparts layer for input and overlay)
  4. The resulting points layer will have only the line intersections, but there are duplicate vertices at some nodes
  5. Delete duplicate geometries
  6. Done!

enter image description here

enter image description here

enter image description here

Related Question