Fractionner des polygones avec une grille de lignes dans QGIS?

8

J'ai une couche vectorielle polygone et une couche vecteur ligne sous forme de grille (elles sont toutes les deux au format .shp). J'ai besoin de diviser les polygones par ces lignes.

J'ai essayé des outils de numérisation mais le problème est qu'il ne traite que d'une ligne à la fois et que j'ai plus de 52 000 lignes. Il faudra un temps ridiculement long pour le diviser manuellement. Comment peut-on le faire pour toutes les lignes?

J'ai QGIS 2.18.

NecroSith
la source
Je viens de remarquer ces questions très proches qui pourraient aider: Fractionner les lignes par des polygones dans QGIS 2.4 ; et comment diviser les polygones par grille de lignes?
Joseph

Réponses:

9

Je ferais probablement ce qui suit:

  1. Exécutez l' outil Lignes vers polygones :

    Vector > Geometry Tools > Lines to polygons
    

    Ou l' outil Polygoniser (comme suggéré par @GaborFarkas ):

    Processing Toolbox > QGIS Geoalgorithms > Vector geometry tools > Polygonize
    

  1. Exécutez l' outil Clip en utilisant la sortie de l'étape 1 comme couche d'entrée et votre couche polygone comme couche Clip :

    Vector > Geoprocessing Tools > Clip
    
Joseph
la source
2
L' Lines to polygonsoutil convertit simplement les types de géométrie autour (la géométrie de l'entité devient l'anneau extérieur du poly résultant). Par conséquent, cela ne fonctionne que si chaque entité de la couche de lignes forme une cellule de grille. Si ce ne sont que des lignes droites verticales et horizontales qui se coupent, l' Polygonizeoutil est le bon pour le travail.
Gabor Farkas
@GaborFarkas - En effet, vous avez raison! J'ai supposé les lignes proches pour former une cellule de grille qui semblait avoir été suggérée par l'OP :). Mais Polygonizec'est plus qu'une solution globale donc merci d'avoir mentionné!
Joseph
1
Merci beaucoup à vous deux, Joseph et @Gabor Farkas, cela a fonctionné. Dans ma grille, chaque entité formait une cellule, donc les lignes dans les polygones le faisaient parfaitement. . :)
NecroSith
@NecroSith - Très bienvenu, content que cela ait fonctionné =)
Joseph
1

Après les lignes et polygoniser comme @GaborFarkus suggère d'exécuter la saga ou la division native avec des lignes. Les lignes doivent être des formes fermées. Peut facilement créer une grille avec «créer une grille». Ensuite, exécutez sagas convertir les points en lignes en utilisant d'abord gauche / gauche puis l'option haut / haut. Fusionnez ces deux couches de lignes. Exécutez ensuite la polygonisation sur les lignes fusionnées. Exécutez ensuite des polygones sur des lignes à ce sujet. Cela fera des lignées à cellules fermées avec lesquelles vous pourrez vous séparer.

Tai Green
la source