版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第五讲,计算几何初步 (Computational Geometry Basic),第一单元,线段属性,思考:,1、传统的计算线段相交的方法是什么? 2、传统方法和本方法的区别是什么?,特别提醒:,以上介绍的线段的三个属性,是计算几何的基础,在很多方面都有应用,比如求凸包等等,请务必掌握!,第二单元,多边形面积 和 重心,基本问题(1):,给定一个简单多边形,求其面积。 输入:多边形(顶点按逆时针顺序排列) 输出:面积S,思考如下图形:,Any good idea?,先讨论最简单的多边形三角形,三角形的面积:,在解析几何里, ABC的面积可以通过如下方法求得: 点坐标 = 边长 = 海伦公式
2、= 面积,思考:此方法的缺点:,计算量大,精度损失,更好的方法?,计算几何的方法:,在计算几何里,我们知道,ABC的面积就是“向量AB”和“向量AC”两个向量叉积的绝对值的一半。其正负表示三角形顶点是在右手系还是左手系。,ABC成左手系,负面积,ABC成右手系,正面积,大功告成:,Area(A,B,C)= 1/2 * (AB) (AC) = /2 特别注意: 以上得到是有向面积(有正负)!,Xb X a Yb Y a,Xc X a Yc Y a,凸多边形的三角形剖分,很自然地,我们会想到以 P1为扇面中心,连接P1Pi就得到N-2个三角形,由于凸性,保证这些三角形全在多边形内,那么,这个凸多边
3、形的有向面积: A=Ai (i=1,N-2),凹多边形的面积?,依然成立!,多边形面积公式:A= Ai (i=1,N-2),结论: “有向面积”A比“面积”S其实更本质!,任意点为扇心的三角形剖分:,既然能把多边形分成N-2个三角形,为什么不能分成N个三角形呢? 比如,以多边形内部的一个点为扇心,就可以把多边形剖分成 N个三角形。,P0,P1,P2,P6,P5,P4,P3,前面的三角剖分显然对于多边形内部任意一点都是合适的!,我们可以得到: A=sigma(Ai) ( i=1,N ) 即:A= sigma /2 ( i=1N ),Xi X0 Yi Y0,X(i+1) X0 Y(i+1) Y0,
4、能不能把扇心移到多边形以外呢?,既然内外都可以,为什么不设P0为坐标原点呢?,现在的公式?,简化的公式:,A=sigma /2 ( i=1,N ),Xi Yi,X(i+1) Y(i+1),面积问题搞定!,基本问题(2):,给定一个简单多边形,求其重心。 输入:多边形(顶点按逆时针顺序排列) 输出:重心点C,从三角形的重心谈起:,三角形的重心是: (x1+x2+x3) / 3,(y1+y2+y3) / 3,可以推广否?,Sigma(xi)/N , sigma(yi)/N (i=1N) ?,看看一个特例:,原因:,错误的推广公式是“质点系重心公式”,即如果认为多边形的质量仅分布在其顶点上,且均匀分
5、布,则这个公式是对的。 但是,现在多边形的质量是均匀分布在其内部区域上的,也就是说,是与面积有关的!,Solution:,剖分成N个三角形,分别求出其重心和面积,这时可以想象,原来质量均匀分布在内部区域上,而现在质量仅仅分布在这N个重心点上(等假变换),这时候就可以利用刚才的质点系重心公式了。 不过,要稍微改一改,改成加权平均数,因为质量不是均匀分布的,每个质点代表其所在三角形,其质量就是该三角形的面积(有向面积!),这就是权!,公式:,C=sigma(Ai * Ci) / A (i=1N) Ci=Centroid( O Pi Pi+1) = (O + Pi +Pi+1 )/3 C=sigma
6、(Pi +Pi+1)(Pi Pi+1) ) /(6A),全部搞定!,第三单元,凸包( Convex Hull ),凸包模板:,/xiaoxia版 #include #include #include typedef struct double x; double y; POINT; POINT result102;/保存凸包上的点 POINT a102; int n,top; double Distance(POINT p1,POINT p2)/两点间的距离 return sqrt(p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y); double Multiply(POINT p1,POINT p2,POINT p3) /叉积 return (p2.x-p1.x)*(p3.y-p1.y)-(p2.y-p1.y)*(p3.x-p1.x); int Compare(const void *p1,const void *p2) POINT *p3,*p4; double m; p3=(POINT *)p1; p4=(POINT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广西玉柴机器集团招聘试题及答案
- 政府投资审计考试试题及答案
- 2026年杜邦(中国)校招面试题及答案
- 2026年法律资格司法考试试题及答案
- 心理安全教育考试试题及答案
- 校园保安培训考试试题及答案
- 口腔医院验光师模拟考试试题及答案
- 胬肉知识测试题及答案
- PTC培训习题及答案解析
- 2026年中学数学教师招聘考试真题解析及模拟试题
- 2026年下半年中小学教师资格考试综合素质(中学)笔试真题及答案
- IEC TR 62595-1-62025 显示器照明装置 第1-6部分用于背光装置的量子点薄膜和量子点扩散板标准立项发展报告
- 2026太仓市城市发展集团有限公司第一批公开招聘6人考试参考题库及答案详解
- 天津市河东区2025-2026学年九年级上学期12月月考英语试题(含答案)
- 2026年秋季开学小学收心归位习惯养成教育课件
- 2026年山东将军开元纸业有限公司招聘(13人)笔试模拟试题及答案详解
- DEK印刷机-操作-编程-保养
- 2026陕西水务发展集团综合能源管理有限公司招聘笔试模拟试题及答案详解
- 国有企业董事会决策事项清单管理制度
- 2026年安徽(高考)化学考试试卷真题(含答案)
- 2026-2030中国航空光电吊舱行业研发创新策略及投资价值评估报告
评论
0/150
提交评论