J'ai travaillé avec la géométrie Boost, principalement pour manipuler des polygones; J'utilisais la méthode intégrée centroïde (http://www.boost.org/doc/libs/1_55_0/libs/geometry/doc/html/geometry/reference/algorithms/centroid/centroid_2.html) pour calculer le centre géométrique (bary) de mes polygones, mais récemment après avoir sorti les coordonnées de mes points (composer un polygone spécifique) (et les analyser sur le côté avec des scripts Python) J'ai réalisé que le centroïde coordonne la méthode précédente en me donnant ne correspond pas à la moyenne géométrique des points du polygone.Boost :: geometry: calcul du centroïde d'un polygone
Je suis en deux dimensions et de le mettre en équations, je devrais avoir:
x_centroid = \frac{1}{number of points composing the polygon} \sum{point i} x_i
et même pour les coordonnées y. Je soupçonne maintenant que ceci pourrait avoir à faire avec le fait que la bibliothèque de géométrie de poussée ne regarde pas seulement les points sur le bord du polygone (son anneau externe) mais le traitant comme un objet rempli.
Est-ce que quelqu'un d'entre vous a une certaine expérience dans la manipulation de ces fonctions?
BTW, je l'aide:
point my_center(0,0);
bg::centroid(my_polygon,my_center);
pour calculer le centre de gravité.
Merci.
En effet, vous avez raison pour des sommets de longueurs vraiment différentes le barycentre des sommets peut être éloigné du centroïde du polygone (rempli). Dans mon cas, tous les sommets ont la même longueur et donc je n'envisageais jamais cela. Je vais utiliser ma propre méthode pour calculer uniquement sur les sommets. Merci pour la contribution pertinente et éclairante;) –