计算机图形学第五章作业答案Final.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  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文档。上传文档
查看更多
计算机图形学第五章作业答案Final

习题1答案 习题1. 设空间有两条线段AB和CD,其端点坐标分别为,和,,怎样判断它们是否相交?若相交,求出交点坐标。 解法1解答: 由端点坐标可知线段AB和CD的参数方程分别为: 如果线段AB和CD相交,则存在和,使下面的方程组: 由(1)式,(2)式即可求出和: 将求得的和代入(3)式,若满足(3)式,则线段AB和CD所在的直线相交。此时如果有: 则线段AB和CD相交,否则不相交。令代入线段AB的参数方程中或者令代入线段CD的参数方程即可求出交点坐标。 解法2解答: 由端点坐标可知线段AB和CD的参数方程分别为: 线段AB和CD在z=0平面上的正投影线段A’B’和C’D’端点坐标分别为,,,。 根据书中第一节介绍的方法(本答案不再重复该方法)可以判断出A’B’和C’D’是否有交点,如果没有交点,则线段AB和CD也没有交点。 如果有交点,假设交点坐标为。因为做的是正投影,所以该交点对应的线段上的被投影点的x、y坐标值相同。假设线段AB和CD上对应该交点的点的坐标分别为和。将坐标值分别代入线段AB和CD的参数方程中,可以分别计算出和,如果=,则线段AB和CD相交,且交点坐标为,否则不相交。 习题15答案 习题15. 写一个算法,能迅速地判断一条直线与一个凸多边形是否相交,若相交求出交点。 解答: 设直线由两点和确定,凸多边形由顶点序列、···(共n个顶点)确定。 算法基本思想如下: 选定多边形顶点序列中点及点,其中,两点构成多边形的一条对角线。判断这两点与直线的位置关系,有如下几种情况: 两点都在直线上,则直线与多边形交于此两点; 两点有一点在直线上,在直线上的点是直线与多边形的一个交点: 如果点在直线上,则检查和与点的位置关系:如点在直线上,则与直线重合,此时认为与是直线与多边形的交点;如与点在直线异侧,则直线与多变形上从点开始到点构成的边所形成的折线有一个交点,可以求出该交点,直线与多边形有此交点和两个交点;如与点在直线同侧,则直线不会与多变形上从点开始到点构成的边所形成的折线有交点;如点在直线上,则与直线重合,此时认为与是直线与多边形的交点;如与点在直线异侧,则直线与多边形上从点开始到点构成的边所形成的折线有一个交点,可以求出该交点,直线与多边形有此交点和两个交点;如与点在直线同侧,则直线不会与多边形上从点开始到点构成的边所形成的折线有交点。如果检查完,与都在同侧,则多边形只与直线有一个交点。 如果点在直线上,则检查和与点的位置关系:如点在直线上,则与直线重合,此时认为与是直线与多边形的交点;如与点在直线异侧,则直线与多变形上从点开始到点构成的边所形成的折线有一个交点,可以求出该交点,直线与多边形有此交点和两个交点;如与点在直线同侧,则直线不会与多变形上从点开始到点构成的边所形成的折线有交点;如点在直线上,则与直线重合,此时认为与是直线与多边形的交点;如与点在直线异侧,则直线与多边形上从点开始到点构成的边所形成的折线有一个交点,可以求出该交点,直线与多边形有此交点和两个交点;如与点在直线同侧,则直线不会与多边形上从点开始到点构成的边所形成的折线有交点。如果检查完,与都在同侧,则多边形只与直线有一个交点。 两点都不在直线上,且在直线异侧,则直线与多边形有两个交点。并且可知,直线是分别与多边形上从点开始到点构成的边所形成的折线,以及从点开始到点构成的边所形成的折线各有一个交点,即直线与被由点和点所构成的对角线分割出的多边形的两部分各有一个交点。 两点都不在直线上,且在直线同侧,此时直线可能会与被对角线分割成两部分的多边形中的一部分有交点,不会与两部分同时有交点。可以判断出直线有可能与那一部分有交点,然后此部分与选定的对角线形成了一个新的凸多边形,对此多边形再次应用本算法;如果直线与两部分都不可能有交点的话,则直线与多边形无交点。此处判断直线与多边形的哪一部分有可能有交点或者不可能有交点可采用如下方法: 比较点和点到直线的距离,如果点离直线较近,则分别检查和点:如点与点和点在直线的异侧,或者点比点离直线更近,则直线可能会与从点开始到点构成的边所形成的折线有交点,利用从点开始到点构成一个新的多边形再次应用本算法,否则直线不会与此部分有交点;如点与点和点在直线的异侧,或者点比点离直线更近,则直线可能会与从点开始到点构成的边所形成的折线有交点,利用从点开始到点构成一个新的多边形再次应用本算法,否则直线不会与此部分有交点。如果对角线分割出的两部分都不会与直线有交点,则直线与凸多边形无交点。 上面算法中要求出直线与多边形边所形成的折线的交点,可以采用如下算法思想来求得: 设要求交点的折线的顶点序列编号为m_start到m_end(m_endm_start); 如果m_end – m_start = 1,则这两个编号的点构成了多

文档评论(0)

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

分享好文档!

1亿VIP精品文档

相关文档