圆并面积的算法及其程序实现.ppt_第1页
圆并面积的算法及其程序实现.ppt_第2页
圆并面积的算法及其程序实现.ppt_第3页
圆并面积的算法及其程序实现.ppt_第4页
圆并面积的算法及其程序实现.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

动态计算圆弧并面积,计算科学与技术学院0704班,武汉科技大学,陈绪伟,问题概述,提纲,系统主要功能,形象动态的展现圆弧信息动态画圆动态修改圆圆的信息的列表展现计算圆弧的交点合并约束圆弧建立矢量多边形最后计算出面积,模块划分,根据分析,系统的主要模块划分如下:,模块划分,文件存取子系统主要是对圆的信息和配置信息进行存储和读取,以便保持软件使用的连贯性。圆弧动态展现子系统主要是对圆弧的形象直接的展现出来,让用户可以直观明了的看到要计算的圆弧并面积的形状与大小。同时,这个模块还可以在一定程度上验证这个计算算法的正确性。面积计算子系统是对圆弧并面积以及各种前提的计算,是对算法的实现,也是本次设计的核心模块。,文件存取模块设计,用XML文件对圆的信息和用户配置信息进行存取采用XML文件来存取数据有两点原因:首先XML文本本身就是用来存储数据的,这很符合本次设计的要求。其次,它的简单性,正是因为XML的简单使其易于在任何应用程序中读写数据。使用CMarkup库来进行操作XML文件进入系统时自动读取相应的XML文本中圆的信息和配置信息,退出系统时自动存储圆信息和配置信息到相应的XML文本中,圆弧动态展现模块设计,圆弧的动态展现模块又划分为四个子模块,如下图所示:,圆弧动态展现模块设计,视图分割模块是将主视图分割成两部分:画图板子视图和列表框子视图。画图板子视图用来画出圆弧,展现出圆弧并面积的形状和大小。列表框视图用来列出圆的信息,展现圆的圆心坐标和半径大小。视图通信模块主要是实现这两个子视图之间的通信,以实现两边的互动,比如对应选中、两个子视图对圆弧信息动态的保持一致性、一些操作的相互调用等等。,圆弧动态展现模块设计,画图板模块主要是画出圆弧并面积,形象直接的展现给用户。还有,这个模块还要实现对鼠标动态拖拽画圆和用鼠标对圆的拖动,以展现圆弧的动态性。这个模块还要能根据配置信息对应的画出网格线、圆心、半径等元素。列表框模块主要是对圆的信息列表展示。在这个的基础之上,列表框还要有右键菜单的功能,以实现对圆的信息的操作功能。,面积计算模块设计,面积计算模块又划分为四个子模块,如下图所示:,面积计算模块设计,计算交点坐标模块是利用相交圆交点坐标计算公式计算出相交圆的交点坐标,并在画图板上标出相应的点,看与上面模块中画出的圆弧的相交位置是否吻合,来验证交点坐标计算的是否正确。合并约束圆弧模块是对每个园中能够合并的约束圆弧进行合并,同时计算出该圆的自由圆弧的度数之和,并计算出自由圆弧扇形的面积。合并完之后,画出合并之后的圆弧,看是否与上面模块中画出的圆弧中为约束圆弧那部分,来验证约束圆弧的产生与合并是否正确。,建立矢量多边形模块是建立起圆弧并面积中的矢量多边形,并画出矢量多边形,看矢量多边形是否将圆弧并面积分为不相交的两大部分区域。在这个模块中同时计算出矢量多边形的面积。面积汇总模块是将上面两个模块中的扇形面积和多边形面积进行汇总,最终得出并面积的面积值。,面积计算模块设计,将圆弧并面积分为两部分:自由圆弧扇形矢量多边形然后分别计算自由圆弧扇形的面积和矢量多边形的面积,再求和,核心算法的主要思想,自由圆弧扇形面积计算,圆与圆的位置关系:相交相离(包括常规的相离和外切)相含(包括常规的内含和内切)相交圆的弧线分为约束圆弧和自由圆弧:约束圆弧:这段圆弧被其他圆包含自由圆弧:这段圆弧没有被任何其他圆包含相离圆的圆弧全部为自由圆弧相含圆的圆弧全部为约束圆弧,自由圆弧扇形面积计算,根据圆的方程式计算出相交圆的交点坐标面积由交点坐标得出两段弧,分别取弧中点,判断是否在相交的那个圆内,若在,这段弧为约束圆弧,若不在则为自由圆弧将每个圆中所有的约束圆弧按三角度制排序,并在此基础上合并约束圆弧每个圆以360减去所有的约束圆弧的圆心角之和,剩下的就是自由圆弧度数之和,从而计算出自由圆弧扇形面积,建立矢量多边形,根据上面合并之后的约束圆弧来建立矢量多边形:由于圆弧的逆时针方向,可知圆弧有一个起点和终点对每段合并之后的约束圆弧,可以建立两段矢量:第一段从圆弧的起点出发,终止于该圆的圆心;第二段从该圆的圆心出发,终止于圆弧的终点。对每个圆的每段合并之后的约束圆弧进行上面处理之后,就可以形成了一个闭合的矢量多边形,矢量多边形面积计算,设构成矢量多边形的矢量为,i=1,2,M的尾端点坐标(xi,yi),头端点坐标(xi,yi)则矢量多边形面积的计算公式为:,与以前的算法对比,动态计算圆弧并面积,成果展示,根据上面的算法动态计算圆弧并面积,应用领域,本次设计解决的问题不仅是计算几何,CAD/CAM和计算机图形学中的一个基础算法,而且在很多问题上具有很强的应用背景。在军事上,将此模型应用于机场布置,如果布置合理,就可以用最少量的资源达到最大范围国土防空的目的。此外,在商业区的布置以及城市的经济、文化生活影响范围等都涉及到圆弧并面积的计算问题,对经济、文化的评估有着一定的意义。,用到的相关技术,视图分割(CSplitterWnd)这个视图分割又涉及到了子视图间的相互通信用到子视图间相互通信的地方有很多,比如:对应选中在画图板上画圆或对圆的拖动时,列表视图动态刷新通过在列表视图对圆进行修改和删除时,画图板上的图对应动态更新,用到的相关技术,拖拽画圆通过异或的模式画图,动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论