我试图编程生成二维多边形的斜边。例如,给定的4个顶点界定的正方形阵列,我要生成这样的事:生成二维多边形的斜边
_________
|\ _____ /|
| | | |
| | | |
| |_____| |
|/_______\|
但计算的内部形状的顶点莫名其妙我。
简单地创建一个原始形状的副本并缩小它在一般情况下不起作用。 (想象一下,试图以这种方式斜切一个N形多边形。)
到目前为止,我的算法涉及分析相邻边(顶点的三元组;例如,一个正方形的左下角,顶点左右角和顶点右顶点)。从那里,我需要找到它们之间的角度,然后沿着该角度创建一个顶点,具体取决于我希望斜面的深度。
而且因为我没有太多的数学背景,所以我被卡住了。我如何找到中心角度?还是有更简单的方法来攻击这个问题?
请问你总是有4个顶点或者你需要一个解决方案,对于任意数量的工作吗? – Skywalker 2010-05-11 20:37:20
以什么方式简单地缩小它不起作用? – mathmike 2010-05-11 20:38:26
@Skywalker我需要一个适用于任何凸或凹多边形的通用解决方案。 – Metaphile 2010-05-11 20:50:16