R2-D2,二维的旋转和膨胀

R2_D2是我给一个新的MATLAB程序起的名字,它提供了2 × 2旋转和膨胀矩阵的动画。我承认我选择“膨胀”是为了让这个首字母缩略词让人印象深刻,但除此之外,代码与著名的《星球大战》机器人没什么关系。

内容

房子

这是一所房子的轮廓MATLAB实验.数据是11个蓝点。每个点的坐标构成一个2 × 1向量;2 × 2旋转和膨胀矩阵分别乘以这些向量。(点与点之间的线构成了图像,不涉及任何计算。)

这座房子也出现在吉尔·斯特朗(Gil Strang)的几个版本的教科书中。斯特朗杂志第三版的封面线性代数概论吉尔的朋友克里斯·柯蒂斯做了一床被子,上面盖着九个房子。

这只手的轮廓,是我从我自己的手测量出来的,也被用于MATLAB实验.有37个点,所以是一个2 × 37矩阵。

旋转

乘以这个矩阵得到一个二维角度的旋转θ

左($ $ R = \ \开始{数组}{rr} \ cosθ}{\ & - \ sinθ}{\ \ \ \ sinθ}{\ & \ cosθ}{\ \{数组}结束\右)$ $

R显示在第一个面板中。如果房子在你的浏览器中没有旋转,试试这个链接:https://blogs.mathworks.com/cleve/files/house_rotate.gif

扩张

膨胀是使物体变大或变小的过程。乘以这个对角矩阵会产生一个倍数的膨胀σ

$$ S = \left(\begin{array}{rr} \sigma & 0 \\ 0 & \sigma \end{array} \right) $$

年代显示在第二个面板中。动画也可在以下网址下载:https://blogs.mathworks.com/cleve/files/hand_dilate.gif

这两个

这里旋转和膨胀相结合。旋转矩阵和膨胀矩阵的乘积驱动动作。如果你错过了所有的动作,试试:https://blogs.mathworks.com/cleve/files/hand_both.gif

R2_D2

当你奔跑R2_D2在你自己的电脑上,你可以自己驱动旋转和膨胀。在物体外部进行鼠标拖动会产生旋转,在物体内部进行鼠标拖动会产生膨胀。

R2_D2计划可从https://blogs.mathworks.com/cleve/files/R2_D2_14.m

进一步的阅读

如果您不熟悉矩阵,或者只是想快速复习,请查看矩阵章的MATLAB实验.练习4.14特别方便。




由MATLAB®R2023a发布

|

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。