如何在没有立方体坐标的情况下找到多边形的质心



这个问题与现有问题类似,只是当前问题需要多边形质心公式而不是立方体坐标,这对我的应用程序至关重要。

我正在处理的应用程序的性质需要整数坐标。为了计算面积,我们可以将位数增加一倍,即从32位增加到64位或从64位增加到128位,这样坐标乘法就不会溢出。对于多边形的质心,我们实现了标准公式,与上面引用的SO问题以及其他几十个在线来源中的公式相同。然而,由于多边形公式的标准质心本质上是坐标的立方体(通过将坐标乘以面积(,我们不能使用它;我们已经在一些测试中看到了整数溢出。

因此,问题来了:有可能在不进行坐标立方运算的情况下找到多边形的质心吗?

这个问题可以通过确定坐标可以取多少不同的值来回答。对于该区域,很明显,所有R²值都是可能的(其中R是坐标范围(。

我认为质心没有理由不是R³(取一个填充的正方形,在任何地方删除一个点,这已经给了你R²不同的质心(。因此,您需要R³数字来区分可能的结果。

但你为什么需要精确的坐标呢?

如果您准备使用128位算术,您可以支持最多42位的范围,这比12位要好。

相关内容

最新更新