计算几何课程报告-清华大学.pdfVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算几何课程报告-清华大学

计算几何实验报告-张荷花、曹媛媛、柳佳 计算几何课程实验报告 题目:基于均匀平面划分的三角剖分算法实现与分析 Title:A fast polygon triangulation algorithm based on uniform plane subdivision 指导教师:邓俊辉 小组成员:曹媛媛 2004310410 柳佳 2004310427 张荷花 2004310445 清华大学计算机系 2005 年1 月3 日 计算几何实验报告-张荷花、曹媛媛、柳佳 一.背景 多边形是计算机图形学和计算几何中得几何形状,实际应用中经常要求对多边形进 行简单形状的划分,其中三角剖分最常用到。 多边形的三角剖分算法主要分为三类:基于对角线插入的方法、Delaunay 方法和 使用Seiner point 的方法,他们在计算时间和实现复杂度上各有千秋。在过去的十多年时 间里,关于三角剖分领域有很多工作,meister 在 1975 年提出了第一个实现算法,他不断 得搜索多边形的ear,然后划分,他的算法复杂度为O(n3),在1990 年Elgindy 等改进了他 的算法,使时间复杂度减少到O(n2),Garey 在1978 年提出了一种分而治之的算法,首次将 算法复杂度减少到O(nlogn)。Kirkpatrik 等的算法继续将复杂度减少到了O(loglogn),并 且数据结构也很简单。在1990 年初期Bernard 证明出任何简单的三角剖分都可以在O(n)内 完成。在实际应用中,不仅希望算法的复杂度较低,还希望它容易理解和实现,本实验实现 的Marko Lamot 算法就是一种有效且实现简单的算法。 二.算法描述 1.算法大体思想: 本算法结合了EAR-CUTTING 算法和DIAGONAL 算法,利用平面子区域划分提供性能:算法 将多边形的顶点分为凹点和凸点两类,将凹点排列到对应的平面子区域中,将凸点存放到一 链表中。算法依次从凸点链表中取点,判断应该使用EAR-CUTTING 方法还是DIAGONAL 方法, 直到凸点链表为空。 2 .算法步骤描述: (1)首先进行初始化,包括一下几步: A) 从界面获取多边形的顶点坐标以及连接关系,存入到我们的多边形类 MyPolygon 的实例中; B) 对多边形进行调整,处理相应的退化情况(各退化情况在后面的部分中将提 到),考察多边形中每个顶点的Y 坐标,选择Y 坐标最大的顶点,记做P,作 为该多边形的第一个顶点,然后,判断与 P 坐标相邻的两个顶点中,哪个是 P 计算几何实验报告-张荷花、曹媛媛、柳佳 顺时针方向的下一个顶点,从而对多边形的所有顶点按照顺时针排序. C) 对多边形的顶点按照凸点和凹点进行严格的分类.组织凹点和凸点的数据结 构。 D) 按照多边形的顶点位置,对多边形所在的区域作子区域划分,子区域划分是为 了减少对凹点是否在三角形内的检查次数,该做法能提高性能,尤其适合于凹 点在区域内分布比较均匀的情况.在我们的算法中,子区域的大小采用下面的 公式来计算: 其中 表示X 坐标的最小值、最大值、Y 坐标的最小值、 最大值。 子区域大小的选择在当 n 较小的时候,体现不出性能的优劣,size 的大小 依赖于顶点的规模已经凹点的分布. 按照上述公式选取子区域大小后,可以得到子区域的数目:

文档评论(0)

wangsux + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档