叉乘法求任意多边形面积
2011-11-20 21:55
316 查看
用叉乘的方法求任意多边形的面积, 很实用的算法,代码很简洁
语法:result=polygonarea(Point *polygon,intN);
参数:
*polygon:多变形顶点数组
N:多边形顶点数目
返回值:多边形面积
注意:
支持任意多边形,凹、凸皆可
多边形顶点输入时按顺时针顺序排列
源程序:
typedef struct
{
double x,y;
} Point;
double polygonarea(Point *polygon,int N)
{
int i,j;
double area = 0;
for (i=0;i<N;i++)
{
j = (i + 1) % N;
area += polygon[i].x * polygon[j].y;
area -= polygon[i].y * polygon[j].x;
}
area /= 2; return(area < 0 ? -area : area);
}
语法:result=polygonarea(Point *polygon,intN);
参数:
*polygon:多变形顶点数组
N:多边形顶点数目
返回值:多边形面积
注意:
支持任意多边形,凹、凸皆可
多边形顶点输入时按顺时针顺序排列
源程序:
typedef struct
{
double x,y;
} Point;
double polygonarea(Point *polygon,int N)
{
int i,j;
double area = 0;
for (i=0;i<N;i++)
{
j = (i + 1) % N;
area += polygon[i].x * polygon[j].y;
area -= polygon[i].y * polygon[j].x;
}
area /= 2; return(area < 0 ? -area : area);
}
相关文章推荐
- 叉乘法求三角形的面积及任意多边形面积
- 从txt文件读取多边形点的坐标,计算任意多边形的面积
- POJ 1654 Area(任意多边形面积)
- 根据坐标计算任意多边形的面积
- Python计算任意多边形面积算法
- 已知任意一个多边形的各个顶点的坐标,怎么去求该多边形的面积?
- 杭电2036————任意求多边形的面积
- 任意凸多边形的面积
- 趣题:构造多边形使得过边界上某一点的任意直线均能等分面积
- POJ 1265 (Pick 公式+求任意多边形面积+顶点多边形的边整点个数)
- hdu2036 计算坐标内任意多边形的面积 含凹凸
- 计算任意多边形的面积
- 任意多边形面积
- 向量叉乘求任意多边形面积,凹凸均可
- 任意多边形的面积公式
- 任意多边形的面积
- hdoj2036 c语言实现(任意多边形的面积
- hdu 2036 改革春风吹满地 任意多边形面积的求解
- 任意多边形面积计算
- 任意多边形面积的计算