2012-01-27 52 views
1

我有一个圆的切片(即由moveTo,lineTo,arc等组成),需要找到切片的中间点。如何查找弧切片的中点?

查找下图中显示的点后面的数学是什么? Middle point of a slice

+3

极坐标,半径的一半,遍历的一半......?我想这取决于你如何定义“中点”,但它似乎知道这将意味着你知道这个问题的答案... – Pointy 2012-01-27 14:14:30

+0

看起来超过半径的一半..再次取决于图像的准确程度 – 0xc0de 2012-01-27 14:37:10

+0

图像并不确切。我总是认为插图有助于解决这类问题。 – Feeney 2012-01-27 14:58:56

回答

4

部门的它看起来 “质心” 给我。

它的坐标(沿半径穿过质心和原点通过在中心处x轴)

centroidX =(4/3)- [R(SIN(A)/ A)

centroidY = 0

其中'A'是圆弧在中心处的角度(弧度),'r'是半径。

编辑:

这是一种可以很容易得出的公式。 任何形状的几何质心是所有点的平均值(加权平均值)。 在物理学中,物体的质心(AKA质心)是整个物体的质量可以被假定为集中的点(例如,物体可以在质心处的针上平衡)。有可以直接用于规则形状的公式。对于不规则的形状,它是通过积分来计算的。

它的基本逻辑是增加所有点的x坐标并除以总数。的点,它给出了x坐标的质心和类似的y坐标。 由于形状上的点不是离散的,所以使用积分。

+0

这是否使用三角形的中值来计算质心? 你能剖析这个,所以我明白了一点。谢谢 – Feeney 2012-01-27 15:01:08

+0

如果形状可以完全分成三角形,可以使用中位数法。因此,对于涉及圆(或其部分)的形状,不能使用中值方法(尽管实际上可以通过选择大量的小三角形来实现,这是一种近似) – 0xc0de 2012-01-27 15:48:06

+0

所以如果A,B和C分别是3点角度。 centroid.X =(A.x + B.x + C.x)/ 3; centroid.Y =(A.y + B.y + C.y)/ 3; – Feeney 2012-01-27 17:30:07

1

设C为中心点,P1和P2为圆周点,且切片角度小于Pi(180度)。

一种可能性:

X = Ç +半径/ 2 * UnitVector(P1 + P2 - 2 * Ç

另:

X = 1/3 *(P1 + P2 + Ç

(取决于具体要求)