几何2D【信息技术】.pdfVIP

  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文档。上传文档
查看更多
第3讲 几何基础知识与应用 刘汝佳 目录 • 几何基础 • 二维基本几何计算 • 多边形 • 二维凸包 一、几何基础 向量空间 • 所有n维向量的集合, 加上两种基本操作 – 向量加法: 满足交换律, 结合律, 单位元为0 向量, 每个 向量有逆元-v – 数量乘法: 满足交换律且对加法满足分配律 • 把数量乘法和向量加法合在一起构成了线性组合: ur uur uur L a v +a v + +a v 1 1 2 2 n n • 如果规定向量的起点都在原点,则可以用几何图 形表示向量加法和数量乘法 仿射几何 • 仿射几何(Affine Geometry)包括标量集合、 点集合和自由向量集合, 标量一般是实数, 自由向量表示方向和大小, 而位置不固定 仿射组合 • 一般来说点和数不能相乘, 点和点也不能相 加, 但 时以下情况是个例外 • 中间项是不合法的, 但最后一项合法 • 系数在[0, 1]的情况称为凸组合, 三个非共线 点的凸组合的轨迹为三角形 欧氏几何 • 在仿射几何中增加内积运算, 构成欧氏几何 • 最重要的内积运算是点积(dot product), 在 坐标系下被定义为各分量对应乘积之和 低维点积与叉积 double dot(Vector2 u, Vector2 v) { return u[1]*v[1]+u[2]*v[2]; } double cross(Vector2 u, Vector2 v) { return u[1]*v[2]-u[2]*v[1]; } double dot(Vector3 u, Vector3 v) { return u[1]*v[1]+u[2]*v[2]+u[3]*v[3]; } Vector3 cross(Vector3 u, Vector3 v) { return Vector3(u[2]*v[3]-u[3]*v[2], u[3]*v[1]-u[1]*v[3], u[1]*v[2]-u[2]*v[1]; } 二维仿射变换 • 平移(Translations): 坐标直接相加即可 • 旋转(Rotations): 仅考虑旋转中心为原点时. 如果 不是, 则先平移, 再旋转, 最后平移回来, 以下是逆 时针旋转a弧度的代码 • 反射(Reflections): 仅考虑沿x=0反射的情形, 其 他可以借助平移和旋转完成 Vector2 Trans2(Vector2 u, Vector2 v) { return Vector2(u[1]+v[1], u[2]+v[2]); } Vector2 Rotate2(Vector2 u, double a) { return Vector2(cos(a)*u[1]+sin(a)*u[2], -sin(a)*u[1]+cos(a)*u[2]); } Vector2 Reflections2(Vector2 u) { return Vector2(u[1], -u[2]); } 进一步学习的建议 • 其他变换: 缩放、剪切 • 齐次坐标与变换矩阵 • 三维仿射变换: 一般旋转矩阵、四元数… • 投影 • … 二、基本二

文档评论(0)

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

1亿VIP精品文档

相关文档