Coordonnées du centre de gravité pour les polygones de forme irrégulière

13

J'ai un problème dans le calcul des centroïdes de certains polygones dans QGIS (via les outils de géométrie): pour certains polygones - avec une forme étrange et plutôt longue - les centroïdes calculés sont hors du polygone. Regardez, par exemple, le polygone marqué en rouge, dans l'image ci-dessous:

entrez la description de l'image ici

Son centre de gravité (pointé par la flèche bleue) est en fait en dehors du polygone d'intérêt. Cela se produit pour une poignée d'autres polygones (mais ennuyeux).

Je suis relativement nouveau sur QGIS, donc je ne pense pas que ce problème soit dû à la projection du fichier de formes avec les polygones (WGS 84). J'ai quand même essayé en re-projetant la carte avec WGS84 / UTM Zone 31, qui correspond à la Belgique (le pays que je regarde).

Je n'ai pas trouvé de réponse à des questions similaires dans les discussions passées; excuses si je l'ai accidentellement oublié.

Andrea
la source
2
Le centroïde est placé au centre de gravité de l'entité. Il est donc normal que pour une entité non convexe, le centroïde se trouve en dehors de l'entité elle-même. Voir l'exemple de polygone dans la documentation PostGIS postgis.net/docs/ST_Centroid.html . Vous voulez probablement un équivalent à ST_PointOnSurface postgis.net/docs/ST_PointOnSurface.html .
user30184
Pour info
Martin F

Réponses:

16

Je pense que les outils standard du centre de gravité du polygone QGIS calculent le centre de masse afin de déterminer le centre de gravité du polygone. Cela pourrait donc se situer en dehors du polygone lui-même (rien à voir avec la projection).

Si vous voulez calculer le centroïde en fonction de ses dimensions, vous pouvez utiliser le plugin realcentroid à la place que vous pouvez télécharger à partir de:

Plugins > Manage and Install Plugins...

Exemple:

Un polygone irrégulier avec le cercle rouge calculé à partir de l' outil Polygone centroid de QGIS (et SAGA); le cercle vert calculé à partir du plugin realcentroid :

Résultat


Il existe également un script en ligne qui produit le même résultat que le plugin que vous pouvez télécharger à partir de:

Processing Toolbox > Scripts > Tools > Get scripts from on-line scripts collection

Et trouvez le Real centroidscript.

Joseph
la source
1
Oui, QGIS utilise le centre de masse également appelé barycentre géométrique comme centroïde.
Jakob
6
Je n'aime pas le nom "Real centroid". Le point sur la surface serait mieux parce que le centroïde est juste par définition ce qu'il est en.wikipedia.org/wiki/Centroid .
user30184
1
@ user30184 - En effet, la description dans le plugin indique également que la fonctionnalité est similaire à la ST_PointOnSurfacefonction PostGIS.
Joseph
@Andrea - Très bienvenu, heureux que cela ait aidé :)
Joseph
2
Il existe de nombreuses définitions de centroïdes, ne vous accrochez pas au "vrai".
mdsumner
9

Proessing QGIS Algorithms a également "Point sur la surface", sous le groupe d'outils de géométrie vectorielle. Pas besoin d'utiliser des plugins externes ni des bases de données

giohappy
la source