U人生活 >平面上基本的线性变换:旋转、镜射、伸缩、推移 >

平面上基本的线性变换:旋转、镜射、伸缩、推移

2020-07-08 10:24| 发布者: U人生活| 查看: 564| 评论: {php} echo


平面上的线性变换,最基本的是下列的四种:旋转、镜射、伸缩、推移。本文将介绍这四种线性变换,及其所对应表示的矩阵。首先,由旋转变换看起。

旋转变换

如图一,坐标平面上,\(\overline{OP}=r\),且点 \(P(x,y)\) 满足  \(x=r\cos\alpha,~y=r\sin\alpha\)。

那幺,以原点 \(O\) 为中心,将点依逆时针方向旋转 \(\theta\) 角后得点 \(P'(x’,y’)\)。

那幺 \( \begin{cases} x’=r\cos(\alpha+\theta) \\ y’=r\sin(\alpha+\theta) \end{cases} \Rightarrow \begin{cases} x’=r(\cos \alpha \cos \theta – \sin \alpha \sin \theta) =x\cos \theta-y \sin\theta\\ y’=r(\sin \alpha\cos \theta+\cos \alpha\sin \theta)=y\cos\theta+x\sin\theta \end{cases}\)

若以矩阵表示,\(\left[ {\begin{array}{*{20}{c}} {x’}\\ {y’} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {\cos \theta }&{ – \sin \theta }\\ {\sin \theta }&{\cos \theta } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\) 。

因此,以原点 \(O\) 为中心逆时针方向旋转 \(\theta\) 角的线性变换之表示矩阵为 \(\left[ {\begin{array}{*{20}{c}} {\cos \theta }&{ – \sin \theta }\\ {\sin \theta }&{\cos \theta } \end{array}} \right]\) ,

并且将 \(\left[ {\begin{array}{*{20}{c}} {\cos \theta }&{ – \sin \theta }\\ {\sin \theta }&{\cos \theta } \end{array}} \right]\) 称为旋转矩阵。

例如,将点 \(A(2,-4)\) 以 \(O\) 为中心逆时针旋转 60o,

则 \(\left[ {\begin{array}{*{20}{c}} {\cos {{60}^ \circ }}&{ – \sin {{60}^ \circ }}\\ {\sin {{60}^ \circ }}&{\cos {{60}^ \circ }} \end{array}} \right]\left[ {\begin{array}{*{20}{c}} 2\\ { – 4} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {\frac{1}{2}}&{ – \frac{{\sqrt 3 }}{2}}\\ {\frac{{\sqrt 3 }}{2}}&{\frac{1}{2}} \end{array}} \right]\left[ {\begin{array}{*{20}{c}} 2\\ { – 4} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {1 + 2\sqrt 3 }\\ { – 2 + \sqrt 3 } \end{array}} \right]\) ,

因此,对应点 \(A’\) 的坐标为 \((1+2\sqrt{3},-2+\sqrt{3})\)。

平面上基本的线性变换:旋转、镜射、伸缩、推移

镜射变换

若给定直线 \(L\) 是过原点且与 \(x\) 轴正向夹角为 \(\theta\) 的直线,

考虑点 \(P(x,y)\) 对直线 \(L\) 的对称点为 \(P'(x’,y’)\) (如图二)。

那幺,这种由 \(P\) 对应到 \(P’\) 的变换称为对直线 \(L\) 的镜射,且直线 \(L\) 被称为镜射轴。

同样,令 \(\overline{OP}=r\) ,且点 \(P(x,y)\) 满足 \(x=r\cos\alpha,~y=r\sin\alpha\)。

那幺,\(\left\{ \begin{array}{l} x’ = r\cos (2\theta – \alpha )\\ y’ = r\sin (2\theta – \alpha ) \end{array} \right. \Rightarrow \left\{ \begin{array}{l} x’ = r(\cos 2\theta \cos \alpha + \sin 2\theta \sin \alpha ) = x\cos 2\theta + y\sin 2\theta \\ y’ = r(\sin 2\theta \cos \alpha – \cos 2\theta \sin \alpha ) = x\sin 2\theta – y\cos 2\theta \end{array} \right.\),

若以矩阵表示,\(\left[ {\begin{array}{*{20}{c}} {x’}\\ {y’} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {\cos 2\theta }&{\sin 2\theta }\\ {\sin 2\theta }&{ – \cos 2\theta } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\)。

因此,过原点且与 \(x\) 轴正向夹角为 \(\theta\) 的直线 \(L\),

则对直线 \(L\) 的镜射变换之表示矩阵为 \(\left[ {\begin{array}{*{20}{c}} {\cos 2\theta }&{\sin 2\theta }\\ {\sin 2\theta }&{ – \cos 2\theta } \end{array}} \right]\),

并且 \(\left[ {\begin{array}{*{20}{c}} {\cos 2\theta }&{\sin 2\theta }\\ {\sin 2\theta }&{ – \cos 2\theta } \end{array}} \right]\) 被称为镜射矩阵。

注意的是,若考虑两次的镜射变换

\(\left[ {\begin{array}{*{20}{c}} {\cos 2\alpha }&{\sin 2\alpha }\\ {\sin 2\alpha }&{ – \cos 2\alpha } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} {\cos 2\beta }&{\sin 2\beta }\\ {\sin 2\beta }&{ – \cos 2\beta } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\)
\( = \left[ {\begin{array}{*{20}{c}} {\cos 2\alpha \cos 2\beta + \sin 2\alpha \sin 2\beta }&{\cos 2\alpha \sin 2\beta – \sin 2\alpha \cos 2\beta }\\ {\sin 2\alpha \cos 2\beta – \cos 2\alpha \sin 2\beta }&{\cos 2\alpha \cos 2\beta + \sin 2\alpha \sin 2\beta } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right] \)
\(= \left[ {\begin{array}{*{20}{c}} {\cos 2(\alpha – \beta )}&{ – \sin 2(\alpha – \beta )}\\ {\sin 2(\alpha – \beta )}&{\cos 2(\alpha – \beta )} \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\)

换言之,两次的镜射变换会合成一次的旋转变换,透过图形的观察会更直观,请见图三。

平面上基本的线性变换:旋转、镜射、伸缩、推移 平面上基本的线性变换:旋转、镜射、伸缩、推移

伸缩变换

接着,来看伸缩变换:

在坐标平面上,以原点 \(O\) 为中心,将点 \(P(x,y)\) 沿 \(x\) 轴方向伸缩 \(h\) 倍 \((h>0)\),

沿 \(y\) 轴方向伸缩 \(k\) 倍 \(k>0\) 得点 \(P'(x’,y’)\),则 \(\left\{ \begin{array}{l} x’ = hx\\ y’ = ky \end{array} \right.\)。

若以矩阵表示,\(\left[ {\begin{array}{*{20}{c}} {x’}\\ {y’} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} h&0\\ 0&k \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\)。

因此,以原点 \(O\) 为中心,将点 \(P(x,y)\) 沿 \(x\) 轴方向伸缩 \(h\) 倍 \((h>0)\),

沿 \(y\) 轴方向伸缩 \(k\) 倍 \((k>0)\) 的伸缩变换之表示矩阵为 \(\left[ {\begin{array}{*{20}{c}} h&0\\ 0&k \end{array}} \right]\),

并且 \(\left[ {\begin{array}{*{20}{c}} h&0\\ 0&k \end{array}} \right]\) 被称为伸缩矩阵。图四中,长方形是正方形(虚线表示)以原点 \(O\) 为中心,

沿 \(x\) 轴方向伸缩 \(3\) 倍;沿 \(y\) 轴方向伸缩 \(\frac{1}{2}\) 倍而得。

平面上基本的线性变换:旋转、镜射、伸缩、推移

推移变换

推移变换分成沿 \(x\) 轴方向和沿 \(y\) 轴方向两种不同的情形:如图五,若点 \(P(x,y)\) 的纵坐标不变,

沿 \(x\) 轴方向推移 \(y\) 坐标的 \(k\) 倍(\(k\) 为常数),得到对应点 \(P'(x’,y’)\),则 \(\left\{ \begin{array}{l} x’ = x+ky\\ y’ = y \end{array} \right.\),

用矩阵表示为 \(\left[ {\begin{array}{*{20}{c}} {x’}\\ {y’} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} 1&k\\ 0&1 \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\),并称 \(\left[ {\begin{array}{*{20}{c}} 1&k\\ 0&1 \end{array}} \right]\) 为沿 \(x\) 轴方向的推移矩阵。

若是点 \(P(x,y)\) 的横坐标不变,沿 \(y\) 轴方向推移 \(x\) 坐标的 \(k\) 倍(\(k\) 为常数),得点 \(P'(x’,y’)\),

则\(\left\{\begin{array}{l} x’ = x \\ y’ = y+kx \end{array} \right.\),用矩阵表示为 \(\left[ {\begin{array}{*{20}{c}} {x’}\\ {y’} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} 1&0\\ k&1 \end{array}} \right]\left[ {\begin{array}{*{20}{c}} x\\ y \end{array}} \right]\),

并称 \(\left[ {\begin{array}{*{20}{c}} 1&0\\ k&1 \end{array}} \right]\) 为沿 \(y\) 轴方向的推移矩阵。

由图六中可以看到很清楚,正方形「沿 \(x\) 轴方向推移 \(y\) 坐标的 \(3\) 倍」的推移变换,与「沿 \(y\) 轴方向推移 \(x\) 坐标的 \(3\) 倍」的推移变换,结果大不相同。不过,却也看到推移变换会改变几何图形的形状,但不改变其面积,这由推移矩阵的行列式值为 \(1\) 也可得知(关于线性变换的面积比,可参阅〈平面上的线性变换〉一文)。

平面上基本的线性变换:旋转、镜射、伸缩、推移


图文推荐

推荐阅读