遇到问题:已知多边形的各个左边点,要求多边形的面积
然后我搜索了下看到这篇文章:https://blog.csdn.net/tianyuhang123/article/details/56094559
这个人说的不多,但是简单明了:
首先已知各定点的坐标分别为(x1,y1),(x2,y2),(x3,y3)。。。,(Xn,Yn)
则该多边形的面积公式为
s=1/2*[(x1*y2-x2*y1)+(x2*y3-x3*y2)+...... +(Xk*Yk+1-Xk+1*Yk)+...+(Xn*y1-x1*Yn) ]
这个面积公式可能算出来是正的,也有可能是负的,所以要加绝对值。
最后的面积为:s=abs(s)。
他还附上了C++的代码,有需要的可以看下。
我以为这是算凸多边形面积的公式,心想能不能也有算凹多边形面积的公式。然后我搜到了这篇文章:
http://www.cnblogs.com/TenosDoIt/p/4047211.html
这个人较详细的说明了上面公式也是可以应用于凹多边形的。
在搜索过程中,还发现了另外一种方法:皮克公式。
https://zh.wikipedia.org/wiki/%E7%9A%AE%E5%85%8B%E5%AE%9A%E7%90%86
这个方法也可以求任意多边形面积。不过有限制条件,而且需要栅格的那种。