二维图形旋转公式的推导

二维图形旋转公式的推导

大家好,又见面了,我是全栈君。

    关于二维图形旋转可能在非常多计算机图形学相关的书籍上都会介绍,然而真正理解公式推导过程的却讲得不多。

那么怎样推导出二维图形绕某一点旋转的公式呢?我在这里就将其推导过程简要的说明一下。

事实上推导过程比較简单,首先我们来看一幅图,看看怎样推导出二维图形绕原点进行旋转的公式。

二维图形旋转公式的推导

上图画的比較粗略,只是能说明问题就够了。如果旋转前的点位于P处。旋转之后的点位于P’处。

怎样求旋转之后的点P’坐标?

在图中。旋转之前P的方向角是a,旋转之后P’的方向角就变为a+b,这里b就是旋转的角度。所谓方向角是改点和原点连线与X轴正向的夹角。旋转的正方向是逆时针

在图中,从P’点向X轴引垂线,垂足为B点,依据三角形的基础知识,能够写出例如以下的等式。

二维图形旋转公式的推导

公式1中的R就是点P以及P’到原点的距离

由公式1,依据高中三角函数的知识,即和差公式得到例如以下等式2

二维图形旋转公式的推导

通过观察上式,Rcos(a)=x,Rsin(a)=y,所以上式进一步花间能够得到以下的等式。

二维图形旋转公式的推导

这个公式就是我们常常看到的二维图形旋转的公式。这样绕原点的旋转公式推导出来了,那么嗨常常碰到的绕某一点旋转的,比方绕着矢量图形的中心旋转的。

在这样的情况下,首先须要平移。然后旋转。最后平移回去,详细步骤例如以下。

二维图形旋转公式的推导

由上图可知,(x0,y0)是旋转的顶点。那么先将图形平移到原点,然后绕着原点旋转b角度,最后平移到(x0,y0)上去。

那么非常easy可知绕随意一点(x0,y0)旋转的公式为

二维图形旋转公式的推导

是不是比較简单,我认为还行。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116344.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月22日 下午5:00
下一篇 2022年1月22日 下午6:00


相关推荐

  • 集成学习(voting)

    集成学习(voting)voting 使用方式 voting hard 根据少数服从多数来定最终结果 voting soft 将所有模型预测样本为某一类别的概率的平均值作为标准 概率最高的对应的类型为最终的预测结果代码实现 fromsklearni selectionfro linea

    2026年3月18日
    2
  • ContentMode 几个属性

    ContentMode 几个属性

    2022年1月8日
    42
  • 超好看的辅助网站html源码

    超好看的辅助网站html源码预览图片 纯 html 源码记事本修改就好了用途我就不说了大家都知道安装步骤 记事本修改好上传服务器或主机根目录参考修改教程和搭建教程下载地址 http www bytepan com dfdUnPaSfY1

    2026年3月26日
    2
  • 支付软件Venmo的101亿美元是怎么赚来的?

    支付软件Venmo的101亿美元是怎么赚来的?全文共 3674 字 预计学习时长 10 分钟图源 unsplash 认真回顾近来的生活 我发现 似乎我使用 Venmo 来支付的情况比使用现金或信用卡还多 我用这个应用来支付房租 水电费 还朋友的钱 甚至都不用带现金 从前 我只用信用卡 实际上 当确实需要用现金买东西的时候 我会觉得很不方便 而 Venmo 正是这种现象的一大延伸 Venmo 是一款美国用以互相转账的移动支付服务和应用 目前 Venmo 归 Paypal 所有 根据 MarketWatch 的 EmilyBary 的数据

    2026年3月26日
    3
  • 纯HTML/CSS实现简易超帅的登录界面【提供完整代码】[通俗易懂]

    纯HTML/CSS实现简易超帅的登录界面【提供完整代码】[通俗易懂]前言 ❤️我独自走过苍苍茫茫,与你同行才有了光❤️

    2022年5月2日
    98
  • 谷歌清楚缓存快捷键_清除浏览器缓存的快捷键是什么

    谷歌清楚缓存快捷键_清除浏览器缓存的快捷键是什么我们经常会遇到这些情况,浏览器打开网页打不开,打开网页老是在加载。尤其是在我们在做网页设计的时候,经常预览结果往往没有出现我们想要的结果,很大可能性就是浏览器的缓存没有清除引起的。那么清除浏览器缓存的快捷键是什么呢?佰佰安全网就带大家来了解一下这些打开浏览器,按Ctrl+Shift+Delete,就会出现清除浏览器缓存的框,你可以选择你要清理的东西,点击ok,一切搞定。各种浏览器清除缓存数据的方法…

    2022年7月18日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号