根据坐标计算任意多边形的面积
公式:
实际操作中,有一点需要注意,例如从a[0]-a[n-1]保存了n个点的坐标信息,累加求和之前,一定不能忘了a[n]=a[0],然后从1操作到n,例如:
1 double getarea(){ 2 double sum = 0.0; 3 a[n] = a[0]; 4 for(int i = 1;i<=n;i++){ 5 sum += a[i].x*a[i-1].y-a[i-1].x*a[i].y; 6 } 7 return sum/2.0; 8 }
这样,就不会漏掉计算最后一个点与第一个生成的向量。