3

I have a line layer that is actually buffer polygons converted to a line layer. I would like to generate points at all places where 3 or more lines intersect. I would settle for places where 2 or more lines intersect. I know that this is possible to do if all the lines were different layers. What I need is a method to do this when all the lines are contained in a single shapefile. There are too many lines to separate them into individual files.

Kingfisher
  • 2,314
  • 1
  • 18
  • 35

2 Answers2

3

You could do it in three (or four) steps:

(1) Create nodes at intersections

Processing Toolbox | GRASS | Vector | v.clean and select break option.

(2) Extract nodes as points layer.

Processing Toolbox | QGIS geoalgorithms | Vector geomerty tools | Extract nodes

(3) Only keep duplicated points (Nodes)

  1. Open attribute table of Nodes (output of Extract nodes tool)
  2. Give an expression: count( "id", group_by:= geom_to_wkt($geometry)) ...assuming you have an id field.
  3. Remove features whose count is only 1 (one).

(4: optional) Remove duplicates (e.g. Delete duplicate geometries tool...)

Kazuhito
  • 30,746
  • 5
  • 69
  • 149
0

Yes, use the line intersections tool from the Vector drop-down menu. Choose Analysis Tools and then Line Intersections.

enter image description here

Louis
  • 684
  • 4
  • 15
GBG
  • 9,737
  • 1
  • 15
  • 44