Je voudrais pouvoir couper des polygones tels que celui ci-dessous, dans QGIS, à une distance définie de chaque côté d'une entité spécifiée sur une autre couche, dans ce cas, une ligne de sentier de OS Mastermap.
De cette façon, j'aurais alors effectivement un tampon le long des lignes qui pourrait représenter un réseau de balades en forêt, par exemple. Dans ce cas, il s'agit d'une fonction linéaire très simple, mais ils sont souvent beaucoup plus complexes et peuvent être très longs à découper. Idéalement, je dois conserver le polygone d'origine car il sera également utilisé.
Est-il possible de couper un polygone de cette façon, ou devrais-je créer les nouveaux polygones en tant que tampons le long de la ligne, puis les couper du polygone existant?
la source
intersection()
au lieu dedifference()
, cela vous donnera la partie tamponnée. Mais je crains que cela ne vous aide pas à obtenir les deux géométries (différence et intersection) en une seule action.Vous aurez besoin de
buffer
la ligne sélectionnée (chemin) à la distance dont vous avez besoin, puis coupez ceux de l'autre polygone à l'aidedifference
.S'il s'agissait d'une opération que vous deviez effectuer très souvent, il serait utile d'écrire un script python pour effectuer les deux opérations ensemble.
la source
Dans les versions plus récentes de QGIS (j'utilise 3.2.1), il est maintenant possible de le faire beaucoup plus rapidement et facilement en utilisant la fonction 'Offset' dans la barre d'outils Snapping (dans le menu déroulant à côté de 'Enable Tracing'):
la source