计算多边形面积
2018-01-10 20:20
155 查看
说明
我们假定得到了按照逆时针顺序给出的 n 个顶点的坐标(x1, y1, x2, y2… xn, yn)且坐标均为整数。那么最简洁的方法就是计算向量叉积(其实也是算行列式)来求,对凹多边形也适用。直观的理解是将多边形分为了若干个小三角形分别求面积。
#include <iostream> #include <cstdio> #include <cmath> using namespace std; int main(void) { int n, i, x[101], y[101]; double sum; while(cin >> n && n){ for (i = 0; i < n; ++i) cin >> x[i] >> y[i]; sum = 0; for (i = 0; i < n - 1; ++i) sum += (x[i] * y[i + 1] - x[i + 1] * y[i]); sum = (fabs(sum + x[i] * y[0] - x[0] * y[i])) * 1.0 / 2; printf("%.1f\n", sum); } }
相关文章推荐
- 计算多边形的面积
- POJ-3348 Cows 计算几何 求凸包 求多边形面积
- HDU_2036——多边形面积,行列式计算
- 叉乘计算多边形面积:poj 1654 Area
- HDU2036 计算多边形的面积
- 计算几何工具算法-求任意多边形的面积
- C++ 求多边形面积,(通过计算三角形)
- 任意多边形面积的计算
- 计算多边形的面积
- 计算多边形面积
- 绘制多边形并计算其面积的一个demo
- 摘:向量叉乘_计算多边形面积_算法模板
- hdu2036 (计算多边形的面积)
- 多边形(n边形)面积计算公式hdu2036
- 多边形面积_ssl1213_计算几何
- 叉乘求任意多边形(凹凸皆可)面积 (属于计算几何类型)
- android中计算多边形的面积
- hdu2036 计算坐标内任意多边形的面积 含凹凸
- 计算多边形面积
- 【计算几何】 叉乘求多边形面积<凹凸均可>