找出多边形的中心点
/** 找出多边形的中心点 */
b2Vec2 findCentroid(vector
int verticesCount = vertices.size();
b2Vec2 c;
/**终于找到罪魁祸首了,使用结构体的时候注意一定要初始化!!!血的教训!!! c.SetZero()等同于 c.Set(0.0f, 0.0f) */
c.SetZero();
float area = 0.0f;
float p1X = 0.0f;
float p1Y = 0.0f;
float inv3 = 1.0f/3.0f;
for(int i = 0; i < verticesCount; ++i) {
b2Vec2 p2 = vertices[i];
b2Vec2 p3 = (i+1) float e1X = p2.x - p1X; float e1Y = p2.y - p1Y; float e2X = p3.x - p1X; float e2Y = p3.y - p1Y; float D = e1X * e2Y - e1Y * e2X; float triangleArea = 0.5
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
