文件名称:逆时针方向排序的多边形-python读取mat文件并转为csv文件的实例
文件大小:9.75MB
文件格式:PDF
更新时间:2024-06-29 17:47:55
算法
图6.26 逆时针方向排序的多边形 接下来,推导下等式(6.3),从几何的角度考虑,设多边形是按照逆时针方向进行排 序的,如图6.26所示, O 表示原点,则多边形的面积可以表示为: 0 1 1 2 1 0 Area( ) Area( ) Area( ) Area( ) n OV V OVV OV V ( 6.4) 其中, 1 1 1 1 Area( ) i i i i i i i i OVV V V x y x y 。如果三角形 1i i OVV 是逆时针顺序的,则 有 1 Area( ) 0 i i OVV ;如果是顺时针顺序的,则有 1 Area( ) 0 i i OVV ;如果三点共线,则有 1 Area( ) 0 i i OVV 。以图6.26为例, 的面积可以理解为多边形 3 4 0 1 T { , , , , , }O V V V V 的面积 减去多边形 1 2 3 L { , , , }O V V V 的面积,就是灰色的多边形 的面积。展开等式(6.4),得到 1 1 1 0 1 ( ) 2 n i i i i i Area R x y x y (6.5) 令 0 0 1 1 1 1 , , , n n n n x x y y x x y y ,可以继续优化等式(6.5),有 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 0 1 1 1 0 1 2 1 2 1 2 1 2 1 2 n i i i i i n i i i i i i i i n n i i i i i i i i i n i i i n n i n i i i i x y x y x y y x y x y x y y x y x y x y y x y x y x y y 等式(6.5)需要 2n次乘法运算,2n次加法运算,等式(6.3)需要 n 次乘法运算,2 1n 次加法运算,与等式(6.5)相比,减少了 n 次乘法计算,效率更高。 上述方法计算出的是多边形 的有符号面积。如果多边形 是逆时针方向的,则