书签 分享 收藏 举报 版权申诉 / 71
上传文档赚钱

类型ACMlecture05计算几何基础课件.pptx

  • 上传人(卖家):晟晟文业
  • 文档编号:4984558
  • 上传时间:2023-01-30
  • 格式:PPTX
  • 页数:71
  • 大小:1.55MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《ACMlecture05计算几何基础课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    ACMlecture05 计算 几何 基础 课件
    资源描述:

    1、2023-1-301今天,今天,你你 了吗?了吗?AC第1页/共71页2023-1-302每周一星(每周一星(4):):0705341007053410陈晟陈晟 第2页/共71页2023-1-303第五讲第五讲计算几何初步计算几何初步(Computational Geometry Basic)第3页/共71页2023-1-304第一单元第一单元线段属性线段属性第4页/共71页2023-1-305第5页/共71页2023-1-306第6页/共71页2023-1-307第7页/共71页2023-1-308第8页/共71页2023-1-309第9页/共71页2023-1-3010第10页/共71页2

    2、023-1-3011第11页/共71页2023-1-3012第12页/共71页2023-1-3013思考:思考:1 1、传统的计算线段相交的方法是什么?、传统的计算线段相交的方法是什么?2 2、传统方法和本方法的区别是什么?、传统方法和本方法的区别是什么?第13页/共71页2023-1-3014特别提醒:特别提醒:n以上介绍的线段的三个属性,是计以上介绍的线段的三个属性,是计算几何的基础,在很多方面都有应算几何的基础,在很多方面都有应用,比如求凸包等等,请务必掌握!用,比如求凸包等等,请务必掌握!第14页/共71页2023-1-3015第二单元第二单元多边形面积和重心多边形面积和重心第15页/

    3、共71页2023-1-3016基本问题(基本问题(1):):n给定一个简单多边形,求其面积。给定一个简单多边形,求其面积。n输入输入:多边形(顶点按逆时针顺:多边形(顶点按逆时针顺序排列)序排列)n输出输出:面积:面积S S第16页/共71页2023-1-3017思考如下图形:思考如下图形:第17页/共71页2023-1-3018Any good idea?第18页/共71页2023-1-3019先看最简单的多边形先看最简单的多边形三角形三角形第19页/共71页2023-1-3020三角形的面积:三角形的面积:n在解析几何里,ABC的面积可以通过如下方法求得:n点坐标=边长 =海伦公式=面积第

    4、20页/共71页2023-1-3021思考:此方法的缺点:思考:此方法的缺点:计算量大精度损失更好的方法?第21页/共71页2023-1-3022计算几何的方法:计算几何的方法:n在计算几何里,我们知道,ABC的面积就是“向量AB”和“向量AC”两个向量叉积的绝对值的一半。其正负表示三角形顶点是在右手系还是左手系。ABC成左手系,负面积ABC成右手系,正面积BCACBA第22页/共71页2023-1-3023大功告成:大功告成:nArea(A,B,C)=1/2*(AB)(AC)=/2特别注意:以上得到是有向面积(有正负)有向面积(有正负)!Xb X a Yb Y aXc X a Yc Y a第

    5、23页/共71页2023-1-3024凸多边形的三角形剖分凸多边形的三角形剖分n很自然地,我们会想到以 P1为扇面中心,连接P1Pi就得到N-2个三角形,由于凸性,保证这些三角形全在多边形内,那么,这个凸多边形的有向面积:A=sigma(Ai)(i=1N-2)P1P2P3P4P5P6A1A2A3A4第24页/共71页2023-1-3025凹多边形的面积?凹多边形的面积?P1P4P3P2第25页/共71页2023-1-3026依然成立!依然成立!多边形面积公式:A=sigma(Ai)(i=1N-2)结论:“有向面积”A比“面积”S其实更本本质质!第26页/共71页2023-1-3027任意点为扇

    6、心的三角形剖分任意点为扇心的三角形剖分:n我们能把多边形分成N-2个三角形,为什么不能分成N个三角形呢?n比如,以多边形内部的一个点为扇心,就可以把多边形剖分成 N个三角形。P0P1P2P6P5P4P3第27页/共71页2023-1-3028前面的三角剖分显然对于多边形内部前面的三角剖分显然对于多边形内部任意一点都是合适的!任意一点都是合适的!我们可以得到:A=sigma(Ai)(i=1N)即:A=sigma /2 (i=1N)Xi X0 Yi Y0X(i+1)X0 Y(i+1)Y0第28页/共71页2023-1-3029能否把扇心移到多边形以外呢?能否把扇心移到多边形以外呢?P0P1P2P3

    7、P4第29页/共71页2023-1-3030既然内外都可以,为什么不设既然内外都可以,为什么不设P0为坐标原点呢?为坐标原点呢?OP1P2P3P4现在的公式?第30页/共71页2023-1-3031简化的公式:简化的公式:A=sigma /2(i=1N)Xi YiX(i+1)Y(i+1)面积问题面积问题搞定!搞定!第31页/共71页2023-1-3032基本问题(基本问题(2):):n给定一个简单多边形,求其重心。给定一个简单多边形,求其重心。n输入输入:多边形(顶点按逆时针顺:多边形(顶点按逆时针顺序排列)序排列)n输出输出:重心点:重心点C C第32页/共71页2023-1-3033从三角

    8、形的重心谈起:从三角形的重心谈起:三角形的重心是:(x1+x2+x3)/3,(y1+y2+y3)/3可以推广否?Sigma(xi)/N,sigma(yi)/N (i=1N)?第33页/共71页2023-1-3034看看一个特例:看看一个特例:.第34页/共71页2023-1-3035原因:原因:n错误的推广公式是“质点系重心公式”,即如果认为多边形的质量仅分布在其顶点上,且均匀分布,则这个公式是对的。n但是,现在多边形的质量是均匀分布在其内部区域上的,也就是说,是与面积有关的!第35页/共71页2023-1-3036Solution:n剖分成N个三角形,分别求出其重心和面积,这时可以想象,原来

    9、质量均匀分布在内部区域上,而现在质量仅仅分布在这N个重心点上(等假变换),这时候就可以利用刚才的质点系重心公式了。n不过,要稍微改一改,改成加权平均加权平均数,因为质量不是均匀分布的,每个质点代表其所在三角形,其质量就是该三角形的面积(有向面积有向面积!),这就是权!第36页/共71页2023-1-3037公式:公式:nC=sigma(Ai*Ci)/A (i=1N)nCi=Centroid(O Pi Pi+1)n =(O+Pi+Pi+1)/3nC=sigma(Pi+Pi+1)(Pi Pi+1)/(6A)第37页/共71页第38页/共71页2023-1-3039第三单元第三单元凸包凸包(Conv

    10、ex Hull)(Convex Hull)第39页/共71页2023-1-3040第40页/共71页2023-1-3041第41页/共71页2023-1-3042第42页/共71页2023-1-3043第43页/共71页2023-1-3044第44页/共71页2023-1-3045第45页/共71页2023-1-3046第46页/共71页2023-1-3047第47页/共71页2023-1-3048第48页/共71页2023-1-3049第49页/共71页2023-1-3050第50页/共71页2023-1-3051第51页/共71页2023-1-3052第52页/共71页2023-1-305

    11、3第53页/共71页2023-1-3054第54页/共71页2023-1-3055第55页/共71页2023-1-3056第56页/共71页2023-1-3057第57页/共71页2023-1-3058第58页/共71页2023-1-3059第59页/共71页2023-1-3060第60页/共71页2023-1-3061第61页/共71页2023-1-3062第62页/共71页2023-1-3063第63页/共71页2023-1-3064第64页/共71页2023-1-3065第65页/共71页2023-1-3066第66页/共71页2023-1-3067凸包模板:凸包模板:/xiaoxia版

    12、#include#include#include typedef structdouble 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

    13、.x-p1.x);int Compare(const void*p1,const void*p2)POINT*p3,*p4;double m;p3=(POINT*)p1;p4=(POINT*)p2;m=Multiply(a0,*p3,*p4);if(m0)return 1;else if(m=0&(Distance(a0,*p3)Distance(a0,*p4)return 1;else return-1;void Tubao()int i;result0.x=a0.x;result0.y=a0.y;result1.x=a1.x;result1.y=a1.y;result2.x=a2.x;re

    14、sult2.y=a2.y;top=2;for(i=3;i=n;i+)while(Multiply(resulttop-1,resulttop,ai)=0)top-;resulttop+1.x=ai.x;resulttop+1.y=ai.y;top+;int main()int i,p;double px,py,len,temp;while(scanf(%d,&n)!=EOF,n)for(i=0;in;i+)scanf(%lf%lf,&ai.x,&ai.y);if(n=1)printf(0.00n);continue;else if(n=2)printf(%.2lfn,Distance(a0,a

    15、1);continue;py=-1;for(i=0;in;i+)if(py=-1|ai.ypy)px=ai.x;py=ai.y;p=i;else if(ai.y=py&ai.xpx)px=ai.x;py=ai.y;p=i;/swap(a0,ap)temp=a0.x;a0.x=ap.x;ap.x=temp;temp=a0.y;a0.y=ap.y;ap.y=temp;qsort(&a1,n-1,sizeof(double)*2,Compare);an.x=a0.x;an.y=a0.y;Tubao();len=0.0;for(i=0;itop;i+)len=len+Distance(resulti,resulti+1);printf(%.2lfn,len);return 0;第67页/共71页Any question?第68页/共71页2023-1-3069课后作业:课后作业:ACM ProgrammingExercise(5)_Geometry 第69页/共71页2023-1-3070下一讲:下一讲:并查集并查集第70页/共71页2023-1-3071Welcome to HDOJWelcome to HDOJThank Thank You You 第71页/共71页

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:ACMlecture05计算几何基础课件.pptx
    链接地址:https://www.163wenku.com/p-4984558.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库