求解多边形的质心

本文详细介绍了求解多边形质心的过程,从简单的两点系统到复杂的凹多边形,涉及均匀重力场中的质心计算,三角形、凸多边形和凹多边形的质心公式,以及相关技术如三角形面积计算和多边形三角化。
摘要由CSDN通过智能技术生成

在前端开发,特别是在游戏前端开发过程中,很多场景下需要求一个多边形的质心。比如在构建由多边形组成的地图时,为了美观我们需要把地名标注在地图的质心处,游戏重力场中的多边形物体需要根据质心来计算其运动规律。本文详述了求解多边形质心的思考过程。

一、从一个简单的系统开始

上图是一个由a,b两个点组成的系统,其中a的质量为ma,b的质量为mb。我们可以根据杠杆的平衡原理,求得这两点的重心(设为k)。即:

(k.x-a.x)mag1=(b.x-k.x)mbg2
k.x=(a.x*mag1+b.x*mbg2)/(mag1+mbg2)

在均匀的重力场中,即g1=g2等情况下,质心和重心重合,因此这个系统的质心为:

k.x=(a.x*ma+b.x*mb)/(ma+mb)

二、多个点的系统

1.三个点的情况

加入c点,设c点处质量为mc,我们把a,b当成一个子系统,令子系统质量为mk,则mk=(ma+mb)。设系统质点坐标点为l,用同样的方式可推导出:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值