多边形的面积求取算法

三角形面积

xy平面内,有三角形123,如下图所示:

1

借助矢量叉积和点积,这个三角形的面积公式非常简单:

这个面积是有符号的:123逆时针排列,则面积为正;123顺时针排列,则面积为负。这是对右手系的总结,如果从背面看这个坐标系就成了左手系。在左手系下,面积的正负情况正好相反。所以,关于面积正负的准确说法应该是:123的排列顺序与方位角增加的方向一致,则面积为正;123的排列顺序与方位角增加的方向相反,则面积为负。

最后,上面的公式不够美观,来一个神来之笔:

多边形面积

假定某个多边形有n个顶点:123、……、n。现在任取一点C,它与n个顶点可以构成n个三角形:(C,1,2)、(C,2,3)、(C,3,4)、……、(C,n-1,n)、(C,n,1)。

现在把这些三角形的面积累积起来,就是多边形的面积了,即:

注意上面公式的最后一项为SC,n,n+1)。顶点n+1超过了n,就转回去取值为1

现在,把C点取为原点O,就可以得到多边形的面积公式如下:

上式中,应该取为

多边形面积同样有正负,以下图为例。多边形有四个顶点12342314有交点P

2

面积12P为正,面积34P为负。两块面积相加,多边形的面积就是零了。所以使用计算多边形面积时,各条边一定不要有交点。

递推公式

假定拿着手持GPS一边走一边显示面积,那么这个公式就有点不太合适了。因为它每次都要计算n个顶点,随着顶点数n的增加其计算效率越来越低。此时,可以考虑使用递推公式。

假定表示顶点123、……、n围成的多边形面积,给多边形增加一个顶点n+1后其面积变为。则有:

可得多边形面积计算的递推公式如下:

上述递推公式要计算3个三角形的面积,为了简化计算,将C点取为1号顶点,则递推公式变为:

因为均为零,因此上式可简化为

做为递推公式,初始值很重要:

最终的递推公式为:

精度评定

拿着手持GPS测量了一圈面积,其测量误差能有多少?1亩地的面积测量误差就达到了1亩,那这个测量就没有什么实际意义了。

微分多边形面积公式,可以得到

注意上式中的请取为相邻点,同样的也应取为相邻点;

根据误差传播率,可知:

假定顶点坐标的点位中误差为,且,则根据可知,代入上式,可得

两边开平方,可得多边形面积的精度

上式中的只与多边形的图形结构有关,也就是说:面积精度与多边形的图形结构是有关系的。

假定多边形为正方形,且边长为。则面积精度,面积相对精度。可见:测量的范围越大(即越大)则面积精度越低,但面积的相对精度越高。

假定多边形为正边形,且外接圆半径为。则圆心角,面积精度,面积相对精度。可见:测量的范围越大(即越大)则面积精度越低,但面积的相对精度越高。测量点越密集(即越大)则面积精度、面积相对精度越高。

结论:

1、面积精度与多边形的图形结构是有关系的;

2、测量的范围越大,面积精度越低,但面积的相对精度越高;

3、测量的顶点越密集,则面积精度和面积相对精度越高。