Je sais comment trouver le centroïde (centre de masse) d'un polygone régulier. Cela suppose que chaque partie du polygone pèse la même chose. Mais comment puis-je calculer le centroïde d'un polygone d'apesanteur (fabriqué peut-être d'Airgel :), où chaque sommet a un poids?
Illustration simplifiée de ce que je veux dire en utilisant la ligne droite: P>
5kg-----------------5kg
^center of gravity
10kg---------------5kg
^center of gravity offset du to weight of vertices
3 Réponses :
Vous voulez prendre une moyenne pondérée sur tous les sommets. Donc, disent que vos sommets sont V1, V2, V3 .... VN avec des masses M1, M2 ... Mn et avoir des coordonnées X et Y V1X, V1Y, V2X, V2Y, etc. Pour obtenir le centre de la masse (CX, CY) Vous voulez:
cx = (v1x*m1 + v2x*m2 + ... vnx*mn) / (m1 + m2 .... mn) cy = (v1y*m1 + v2y*m2 + ... vny*mn) / (m1 + m2 .... mn)
En fait, vous pouvez appeler cela la définition de centroïde :)
La formule serait: où Essayez de google pour "organes rigides", je suppose que vous allez Trouvez beaucoup d'informations utiles. p> EDIT: P> en code, ce serait quelque chose comme ceci: p> mc code> est le centre des masses, m_i code> est la masse du sommet i code>, p_i code> la position et m code> la masse globale. p>
1) génère un vecteur pour chaque sommet p>
2) Multipliez chaque vecteur pour le poids du sommet p>
3) Somme les vecteurs p>
4) diviser pour une masse totale p>
5) Il y a votre centre de masse! P>