求复杂多边形面积的算法
2014-04-15 17:03
260 查看
在skeinforge上看到一个计算复杂多边形面积的python代码,它可看成是利用2+1维的叉积的z坐标的累积,非常巧妙,把它翻译成C++代码和大家共享,如有不足,欢迎指正。
struct Point { float x, y; }; //Get the area of a complex polygon(refer from skeinforge) float getAreaLoop(vector<Point> loop) { float areaLoopDouble=0; Point point,pointEnd; int i,length=loop.size(); for(i=0;i!=length;++i) { point=loop[i]; pointEnd=loop[(i + 1) % length]; areaLoopDouble += point.x * pointEnd.y - pointEnd.x * point.y; } return 0.5 * areaLoopDouble; }
相关文章推荐
- html 滚动固定显示js脚本
- 九度题目1172:哈夫曼树
- LeetCode - Sort List
- 编程精华资源大汇总
- 制作一个链表的方法
- MyBatis多参数传递之注解方式示例
- GPS NMEA码格式
- 软考历程(1)——操作系统
- css中定位中的absolute和relative是什么意思
- 6.8 final 关键字 和 6 . 8 . 1 f i n a l 数据
- 数据生成器。。。
- Config程序配置文件操作实践及代码详注
- 算法笔记整理
- Servlet创建、编译、部署、运行
- SHELL脚本分支结构之if
- tesseract-ocr 图像识别所遇到的些问题
- XHTML标签的嵌套规则
- placeholder在不同浏览器下的表现及兼容方法
- javascript中的2个感叹号的用法
- user profile信息同步问题