我已经在互联网上搜索了好几天,但是对于似乎应该是一个常见问题的问题,我一直无法找到一个好的答案(或者至少是一个对我有意义的答案)。如何缩放任意多边形?特别是凹多边形。我需要一种可以处理凹面(肯定)和自相交(如果可能)多边形的算法。我用来处理简单凸多边形的明显而简单的算法是计算多边形的质心,将该质心平移到原点,缩放所有顶点,并将多边形平移回其原始位置。
这种方法不适用于许多(或所有)凹多边形,因为质心通常落在多边形之外,因此缩放操作也会导致平移,我需要能够在没有最终结果的情况下“就地”缩放多边形正在翻译。
有人知道缩放凹多边形的方法吗?或者也许是一种找到“视觉中心”的方法,可以用作缩放操作的参考框架?
澄清一下,我在 2D 空间中工作,我想使用“视觉中心”作为参考框架来缩放我的多边形。所以也许另一种问这个问题的方法是,我如何找到凹面和/或自相交多边形的视觉中心?
谢谢!