- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
任意多边形面积计算
根据坐标直接按公式计算。
---------------------------------------------------------------
这是一个问题早已经解决的经典问题
假定多边形n个顶点坐标依次是(x1,y1), ... (xn,yn)
如果n个顶点是逆时针排列,面积就是:
|x1 y1| |x2 y2 | ... |xn yn|
s = 0.5 * { | | +| |+ | | }
|x2 y2| |x3 y3 | ... |x1 y1|
如果是顺时针就是上面这个公式的负数
把上面的公式整理得到的就是hnyyy的表达式,
注意他的算法对最后一个行列式的处理有问题
double dMj=0;//面积
//n是点数
x[n]=x[0];
y[n]=y[0];
for(int i=0; in-1; i++)
{
dMj+=x[i]*y[i+1]-x[i+1]*y[i];
}
if (n1)
dMj += x[n]*y[0]-x[0]*y[n]
dMj=fabs(dMj)*0.5;
放心用,没有问题的.
计算几何算法实现-任意多边形的面积
点击数:1082 发布日期:2006-4-27 21:21:00
【收藏】 【评论】 【打印】 【编程爱好者论坛】 【关闭】
Tag:算法
//time: 4.27 night
description:
AREA
Jerry, a middle school student, addicts himself to mathematical research. Maybe the problems he has thought are really too easy to an expert. But as an amateur, especially as a 15-year-old boy, he had done very well. He is so rolling in thinking the mathematical problem that he is easily to try to solve every problem he met in a mathematical way. One day, he found a piece of paper on the desk. His younger sister, Mary, a four-year-old girl, had drawn some lines. But those lines formed a special kind of concave polygon by accident as Fig. 1 shows.
Fig. 1 The lines his sister had drawn
Great! he thought, The polygon seems so regular. I had just learned how to calculate the area of triangle, rectangle and circle. Im sure I can find out how to calculate the area of this figure. And so he did. First of all, he marked the vertexes in the polygon with their coordinates as Fig. 2 shows. And then he found the result--0.75 effortless.
Fig.2 The polygon with the coordinates of vertexes
Of course, he was not satisfied with the solution of such an easy problem. Mmm, if theres a random polygon on the paper, then how can I calculate the area? he asked himself. Till then, he hadnt found out the general rules on calculating the area of a random polygon. H
文档评论(0)