Suite

Convertir des ensembles de points en limites de polygones ?


J'essaie de convertir des ensembles de points en leurs limites de polygones respectives. Je pense que c'est quelque chose comme un diagramme de Voronoï ou une coque convexe, mais pas tout à fait. Je suis sûr qu'il existe un terme technique pour cela, mais je suis un débutant en SIG.

C'est probablement mieux illustré avec l'image suivante :

Donc, étant donné 4 ensembles de points (chacun dans sa propre couleur), quels sont les quatre polygones entourant chaque ensemble respectif de points de telle sorte que l'espacement entre les polygones maximise les marges et que tous les polygones se rejoignent ?

Voici un exemple simplifié en 3 points :

  • A,43.656943,-79.393928,bleu
  • B,43.66663,-79.402682,vert
  • C,43.656447,-79.408004,vert

Vous devrez voir le graphique suivant pour qu'il ait un sens :

Essentiellement, chaque point a une couleur et vous développez une zone tampon à une certaine distance pour commencer.

La partie difficile est quand il y a une collision avec d'autres points (leurs limites) et où calculer cette limite. Le résultat est un ensemble de polygones (un pour chaque couleur/ensemble).


Depuis votre couche de points

vous pouvez créer des plogyons Voronoi

Ce qui entraînerait ce

Créez ensuite un masque à partir du processus de triangulation de Delauney

Et puis découpez la couche de polygones de Voronoi avec.

Cela suffirait-il ?

Vous pouvez également essayer de combiner votre masque de triangulation Delauney avec un tampon de votre calque de points

et utilisez-le pour découper vos polygones de Voronoi à la place


Les polygones de Voronoi avec un fondu vous donneront la première partie. En commençant par vos points, chaque ensemble doit avoir son propre identifiant unique (« col » dans cet exemple). Trois valeurs de col avec un ensemble de points :

Vecteur|Outils de géométrie|Les polygones de Voronoï avec un tampon de 20 % vous donnent la « limite entre les points » :

L'utilisation de 'col' comme variable de dissolution avec Vector|Geoprocessing tools|Dissolve vous donne des polygones fusionnés autour de chaque ensemble de points :

Vecteur|Outils de géotraitement|Les coques convexes peuvent vous donner une limite convexe autour de vos points, que vous pouvez utiliser pour découper les limites dissoutes :

Cependant, d'après votre premier exemple, vous semblez avoir besoin de couper avec un concave coque (plus une certaine distance tampon ? ); la coque concave est une fonction que je n'ai pas pu trouver ; PostGIS a la fonction.


Voir la vidéo: Convertir les unités daire - Sixième (Octobre 2021).