计算凸多边形的面积

计算任意多边形的面积
计算凸多边形的面积_第1张图片
计算凸多边形的面积_第2张图片

计算三角形面积 
double getS(Point a,Point b,Point c)    
  {
       
      return ((b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x)) / 2;   //应用叉积的定义推出的 
  }

计算多边形面积。必须确保 n>=3,且多边形是凸多边形 
double getPS(Point p[], int n)    
 {
     
     double sumS = 0;
     for(int i = 1; i <= n - 1; i++)
         sumS += getS(p[1], p[i], p[i + 1]);  // n-2个三角形的面积和
     return sumS;
 }

参考: 计算凸多边形面积的算法

计算任意多边形的面积
首先判断图形是否是凸多边形,然后把它切割成多个三角形,然后利用叉乘定理,可以计算出他的面积。

计算凸多边形的面积_第3张图片
计算几何之凸包(一) {卷包裹算法}
Python求凸包及多边形面积
计算凸多边形的面积_第4张图片

你可能感兴趣的:(瞌睡识别,计算不规则图形面积)