"Merging" 2 layers of LineString with splits at intersections

المشرف العام

Administrator
طاقم الإدارة
I would like to "merge" 2 networks of lines and these lines need to be split when they intersect. With pictures it should be clearer :



What to do:

  • if a black line intersects a red line, they should be split
  • a line can be split in more than 2 parts
  • I would like to keep line IDs (for example, a red_line_001 can be split into red_line_001_01 + red_line_001_02 + red_line_001_03)
Restrictions:

  • each network may have more than 100000 lines
  • the algorithm should be efficient
  • I need to do it in Python
  • If possible, I would like to use Shapely, OGR-GDAL and/or Fiona
  • If possible, it should work with more than 2 networks
I already did this work with PostGIS and it was quite efficient (but not generic and worked only for 2 networks).I do not want you to solve this problem for me, I just need some hints and advice about what is the best solution to my problem.

Thanks a lot for your help !



أكثر...
 
أعلى