多线段几何图形—— 简单几何图形(多边形三角形化)

1.对凸多边形的三角化(没有凹角的多边形叫做凸多边形)



如上图,凸多边形的三角化是个很简单的问题

(1)使用当前点和前后两个点,构成一个三角形,保存到三角形数组中。

(2)删除当前点,形成一个新的图形。

(3)重复(1)(2)操作直到点只剩3个时终止,并且把这三个点构成一个三角形,保存到三角形数组中。


2.凹多边形的三角化

(1)求出所有角的凹凸性。   如何判断多边形角的凹凸性

(2)选取其中一个凹角,然后凹角所在点,和前两点或后两点,形成一个三角形 。如果这个图形中剩余的点(三点除外的点),有任意一个点在这个三角形的内部,则证明是错误的分割,换一个凹角重复(2)操作。反之,把这3个点构成的三角形保存到三角形数组中,删除连续3点中,中间点(凹角旁边一定是凸角,所以删除的就是凸角点)。

  如何判断点是否在三角形内 

(3)重复(1)(2)操作直到点只剩3个时终止,并且把这三个点构成一个三角形,保存到三角形数组中。


以上图F点所在的凹角为例,会形成两个三角形AGF,FED,那么AGF为不合法分割(C点在AGF中),FED为合法分割,

删除E点形成新的图形(下图就是分割后形成的新图形),然后在重复操作,直至满足条件终止。





猜你喜欢

转载自blog.csdn.net/keng_s/article/details/52137594