已阅读5页,还剩55页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1/60,计算几何学,2/60,叉积点积,计算几何的基本工具,计算几何的常见问题总结,3/60,叉积(外积),已知有向线段op1=(x1,y1),op2=(x2,y2)op1与op2叉积表示为:op1op2几何意义:是以op1、op2为边的平行四边形的有向面积。即op1op2=|op1|*|op2|*sin(a),0=a0,则向量op1到op2成逆时针;即op2在op1的左边。b.若op1op20,则向量op1到op2成顺时针;即op2在op1的右边。c.若op1op2=0,则向量op1和向量op2共线.(同向或反向)。,叉积-“左右”判定,a,b,c,左,右,p1(x1,y1),O,5/60,叉积点积,计算几何的基本工具,计算几何的常见问题总结,6/60,点积(内积),已知有向线段op1=(x1,y1),op2=(x2,y2)op1与op2的点积表示为op1op21.几何意义:OP1在OP2上的的投影OP1与OP2的长度乘积op1op2=|op2|*|op1|*cos(a),0=a0,则op1(op2)指向op2(op1)的前方,且共线时取最大值若0,则向量p0p2在p0p1的左边,因此在p1点左转若0,则向量p0p2在p0p1的右边,因此在p1点右转若=0,则说明点p0、p1和p2共线,p1,p2,p0,左,右,右,11/60,线段方面的问题,判断连续线段的左右转向判断线段是否与水平射线相交判断两线段是否相交判断任意两线段是否相交计算点到线段的距离小结,12/60,判断线段是否与水平射线相交,Ya=Yp=Yb点p在ab的右边,即abap0,addb0,判断交点是否在线段上(d是否在ab上),16/60,判断线段是否相交,无同号,有0,判断交点是否在线段上,returnfalse,returntrue,returntrue,真,假,是,否,有同号,returnfalse,17/60,线段方面的问题,判断连续线段的左右转向判断线段是否与水平射线相交判断两线段是否相交判断任意一对线段是否相交计算点到线段的距离小结,18/60,确定任意一对线段是否相交,使用扫除的技术,即假设一条垂直扫除线沿X轴方向从左到右移动,每遇到线段端点,就进行一定的操作。,前提:1.没有线段是垂直的;2.没有三条输入线段相交于同一点;,设一序列T,当线段的左端点遇到扫除线时,线段就按交点的y值递减的插入到序列T中,当其右端点遇到扫除线时离开序列T。,b,ab,abc,dbc,ced,e,dbc,de,abc,T序列,ced,Y,19/60,b,ab,abc,dbc,dbc,abc,对所有线段的端点按x值从小到大进行排序。若存在x值相同的点,将左端点排前;若都为左端点,将y值小的排前。,不相交,不相交,不相交,相交,for(每个端点p),左端点,右端点,将线段插入到T中,判断是否与其相邻的元素相交,判断它的上下相邻元素之间是否相交,并删除,returntrue,处理下个端点,是,是,否,否,O(nlgn),returntrue,只能判断是否有交点,不能求交点个数,20/60,不相交,相交,for(每个点p),左端点,右端点,将线段插入到T中,判断是否与其相邻的元素相交,判断它的上下相邻元素之间是否相交,并删除,将交点插到顶点序列中,处理下个点,是,否,O(nlgn),交点,a,ba,cba,Q1,cab,相交,Q2,count+,acb,不相交,acb,cb,b,交换所属线段的位置,再判断是否与其相邻的元素相交,是,处理下个点,将交点插到顶点序列中,是,否,否,可求交点个数,21/60,线段方面的问题,判断连续线段的左右转向判断线段是否与水平射线相交判断两线段是否相交判断任意一对线段是否相交计算点到线段的距离小结,22/60,点到线段距离已知点A,B,C的坐标,求点C到线段AB的距离;设CH为三角形CAB的高。三角形ABC的面积有两种计算方法:(1)1/2(|AB|*|CH|)(2)1/2|ACAB|因此距离|CH|=|ACAB|/|AB|=,A,B,C,H,23/60,线段方面的问题,判断连续线段的左右转向判断线段是否与水平射线相交判断两线段是否相交判断任意两线段是否相交计算点到线段的距离小结,24/60,线段方面问题的小结,判断连续线段的左右转向判断线段ab是否与点p的向左水平射线L相交判断两线段是否相交判断任意一对线段是否相交计算点到线段的距离,用叉积正负号判断,YaYp=d,则R中最多只有6个S中的点。Proof:,在分治法的合并步骤中最多只需要检查6n/2=3n个候选者,O(nlogn),d,d,任意两点距离=对角线距离,p1,p2,R,55/60,最近、最远点对问题,寻找最近点对寻找最远点对小结,56/60,寻找最远点对,用格雷厄姆扫描法或步进法求凸包(O(nlogn)用旋转卡壳算法求凸包直径,也就找到了最远点对(O(n),这一对最远点必然存在于这n个点所构成的凸包上。且一定是凸包直径的两端点,平均复杂度O(nlogn)。,方法:,57/60,最近、最远点对问题小结,寻找最近点对寻找最远点对,:分治法递归的寻找,:先求出凸包,再找到凸包的直径,58/60,叉积点积,计算几何的基本工具,总结,计算几何的常见问题,线段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第三方物流与第四方物流发展的比较分析
- 工商银行(超详细)笔试真题、复习资料、面试技巧
- 汉语言文学毕业论文8000字
- 临床试验远程监查与患者招募筛选的远程化整合
- 小学美术教师考核工作登记表完整版
- 工程造价管理中的成本控制与优化策略
- 昆明理工大学研究生学位论文撰写规范
- 开题报告的导师评语
- 会计文献综述选题
- 浅谈工程项目中的材料采购管理【论文】
- 英文检测合同协议
- 城市低空安全监管平台解决方案
- pep人教版小学英语五年级上册第五单元教案
- 建筑消防设施维护保养方案
- 《胸痛中心质控指标及考核标准》(第三版修订版)
- 仓库安全风险辨识清单
- 污染和泄漏应急处理
- 陕煤集团榆林化学有限责任公司招聘笔试
- 前列腺癌放疗护理
- 智联国企行测笔试题库
- 【MOOC】信息社会与人工智能-山东大学 中国大学慕课MOOC答案
评论
0/150
提交评论