计算几何(2).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算几何(2) 阳王东 计算几何的相关知识 1、点与面 2、线与面 3、交与并 点与面 点是否在平面 点到平面的距离 点与面(判断点是否在面上) 判断d点是否在a , b, c三点确定一个平面 1.三点可以确定一个平面 2.同时,平面上一点和平面的法线也可以确定这个平面 平面的法线可以通过平面上两条不平行的矢量的叉积确定 点与面(点到面的距离) ab.x = b.x - a.x; ab.y = b.y - a.y; ab.z = b.z - a.z; ac.x = c.x - a.x; ac.y = c.y - a.y; ac.z = c.z - a.z; 点与面(点到面的距离) 三维矢量的叉积 abc.x = ab.y * ac.z - ab.z * ac.y; abc.y = -(ab.x * ac.z - ab.z * ac.x); abc.z = ab.x * ac.y - ab.y * ac.x; 平面方程 //abc.x * (x - a.x) + abc.y * (y - a.y) + abc.z * (z - a.z) = 0; if(fabs(abc.x * (d.x - a.x) + abc.y * (d.y - a.y) + abc.z * (d.z - a.z)) eps) eps = 1e-6(控制精度) 延伸:输入n个点,判断这n个点是否在同一平面内 1.选取三个不在同一直线上的点(如果所有点都在同一直线上, 则所有点都在同一平面),求出平面方程 2.根据平面方程,判断其他点是否在这一平面上 点到面的距离 弹孔问题 问题描述 现有一个边长为d的立方体悬浮在空间中。该立方体是由 个大小相同的小立方体构成。每个小立方体六个面很薄(可以忽略不计)但不漏水的材料做成的。每个立方体注满水。如果在立方体外开一枪,枪口位置在(x1,y1,z1),子弹将经过(x2,y2,z2)。子弹不会令立方体砸开,只会在它与立方体接触的所在位置留下一个小孔。要求计算子弹经过后立方体将有多少水会流出来。假定子弹直线飞行。 输入 输入只有一行,包含8个整数,用空格隔开。第一个数是n(n=50),第二个数是d(d=100)。余下六个数依次是x1,y1,z1,x2,y2,z2(大于或等-100,小于等于100)。 输出 输出流出水的体积,保留两位小数(四舍五入)。 输入样例5 25 5 15 0 5 15 100 输出:2500.00 线与面 线与圆(线与圆的关系) 交与并 三角形的外接圆 外接圆圆心计算公式 三角形的内切圆 三角形的内切圆圆心 最小半径圆 描述 设平面上有n个点(0=n=1000),每个点用一对坐标(x,y)表示(0=x,y=10000,x和y为整数)。找出一个半径最小的圆将n个点全部包围,可以在圆周上。 输入 第一行是一个整数m,表示有m组测试数据。每组测试数据的第一行为整数n,表示有n个点,接下来n行每行有两个整数表示x,y。 输出 对于每一组数据,在一行输出三个数分别表示圆心坐标和半径,精确到小数两位(四舍五入)。 输入样例 交与并 线段相交 多边形相交 线段相交 快速排斥 跨立实验 平面扫描 判断两线段是否相交 判断P1P2是否和P3P4相交,其中Pi坐标为(xi,yi),同样需要满足两个条件 (1)快速排斥试验: 以P1P2为对角线的矩形S1是否和以P3P4为对角线的矩形S2相交,即 min(x1,x2)=max(x3,x4) min(x3,x4)=max(x1,x2) min(y1,y2)=max(y3,y4) min(y3,y4)=max(y1,y2) 判断两线段是否相交 (2)跨立试验: 点P1,P2必然在线段P3P4的不同侧,因此 点P3,P4必然在线段P1P2的不同侧,因此 快速排斥试验引申 思考: 简单的改造一下就可以用来判断一个矩形是否在另一个矩形内部 扫描法 区间重叠判断 线段次序关系 土地划分 输入输出格式输入文件有多组数据组成。每组数据格式如下: 第一行输入地图的宽度w (1=w=1000)和高度 h (1=h=1000),均为整数。 第二行输入线段数L (1=L=50)。 以下L+1行每行一个整数坐标(Xi,Yi),庄主划的线段为(Xi,Yi)-(Xi+1,Yi+1),i=1,2,…,L。当然(Xi,Yi)必定在矩形的边界上。 最后一组数据w=h=0,标志文件结束,不需要处理。 对于给定的输入,输出一行仅含一个数,即划分出的土地块数。 样例输入 18 12 8 2

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档