《输入多边形顶点按逆时针顺序排列课件.ppt》由会员分享,可在线阅读,更多相关《输入多边形顶点按逆时针顺序排列课件.ppt(20页珍藏版)》请在三一办公上搜索。
1、2023/3/17,1,多边形面积和重心,2023/3/17,2,基本问题(1):,给定一个简单多边形,求其面积。输入:多边形(顶点按逆时针顺序排列)输出:面积S,2023/3/17,3,思考如下图形:,2023/3/17,4,先看最简单的多边形三角形,2023/3/17,5,计算几何的方法:,在计算几何里,我们知道,ABC的面积就是“向量AB”和“向量AC”两个向量叉积的绝对值的一半。其正负表示三角形顶点是在右手系还是左手系。,ABC成左手系,负面积,ABC成右手系,正面积,2023/3/17,6,大功告成:,Area(A,B,C)=1/2*(AB)(AC)=/2特别注意:以上得到是有向面积
2、(有正负)!,Xb X a Yb Y a,Xc X a Yc Y a,2023/3/17,7,凸多边形的三角形剖分,很自然地,我们会想到以 P1为扇面中心,连接P1Pi就得到N-2个三角形,由于凸性,保证这些三角形全在多边形内,那么,这个凸多边形的有向面积:A=sigma(Ai)(i=1N-2),2023/3/17,8,凹多边形的面积?,2023/3/17,9,多边形面积公式:A=sigma(Ai)(i=1N-2),结论:“有向面积”A比“面积”S其实更本质!,2023/3/17,10,任意点为扇心的三角形剖分:,我们能把多边形分成N-2个三角形,为什么不能分成N个三角形呢?比如,以多边形内部
3、的一个点为扇心,就可以把多边形剖分成 N个三角形。,P0,P1,P2,P6,P5,P4,P3,2023/3/17,11,前面的三角剖分显然对于多边形内部任意一点都是合适的!,我们可以得到:A=sigma(Ai)(i=1N)即:A=sigma/2(i=1N),Xi X0 Yi Y0,X(i+1)X0 Y(i+1)Y0,2023/3/17,12,能否把扇心移到多边形以外呢?,2023/3/17,13,既然内外都可以,为什么不设P0为坐标原点呢?,现在的公式?,2023/3/17,14,简化的公式:,A=sigma/2(i=1N),Xi Yi,X(i+1)Y(i+1),面积问题搞定!,2023/3/
4、17,15,基本问题(2):,给定一个简单多边形,求其重心。输入:多边形(顶点按逆时针顺序排列)输出:重心点C,2023/3/17,16,从三角形的重心谈起:,三角形的重心是:(x1+x2+x3)/3,(y1+y2+y3)/3,可以推广否?,Sigma(xi)/N,sigma(yi)/N(i=1N)?,2023/3/17,17,看看一个特例:,2023/3/17,18,原因:,错误的推广公式是“质点系重心公式”,即如果认为多边形的质量仅分布在其顶点上,且均匀分布,则这个公式是对的。但是,现在多边形的质量是均匀分布在其内部区域上的,也就是说,是与面积有关的!,2023/3/17,19,Solution:,剖分成N个三角形,分别求出其重心和面积,这时可以想象,原来质量均匀分布在内部区域上,而现在质量仅仅分布在这N个重心点上(等假变换),这时候就可以利用刚才的质点系重心公式了。不过,要稍微改一改,改成加权平均数,因为质量不是均匀分布的,每个质点代表其所在三角形,其质量就是该三角形的面积(有向面积!),这就是权!,2023/3/17,20,公式:,C=sigma(Ai*Ci)/A(i=1N)Ci=Centroid(O Pi Pi+1)=(O+Pi+Pi+1)/3C=sigma(Pi+Pi+1)(Pi Pi+1)/(6A),