目 录CONTENT

文章目录

三维空间的线形变换

Hello!你好!我是村望~!
2023-04-03 / 0 评论 / 0 点赞 / 122 阅读 / 1,139 字
温馨提示:
我不想探寻任何东西的意义,我只享受当下思考的快乐~

三维空间的线形变换

image-20230403142852666

其实和二维也是完全相同的~ 三维的线形变换同样也由基向量的变换去向完全决定~

除了 x 方向的 i 帽 ,y方向的 j 帽,在三维多了一个z方向的k帽!

i^=[100];j^=[010];k^=[001]\hat{i} = \left[ \begin{array} { l } { 1 } \\ { 0 } \\ { 0 } \end{array} \right];\hat { j } = \left[ \begin{array} { l } { 0 } \\ { 1 } \\ { 0 } \end{array} \right];\hat { k } = \left[ \begin{array} { l } { 0 } \\ { 0 } \\ { 1 } \end{array} \right]

同样的因为整个三维空间的向量,都可以根据三个基向量缩放得出!那么我们只考虑基向量的变换就可以了!

假设现在有一个变换,变换后的基向量分别为:

image-20230403143715062

将变换后的基向量记录到一个 3*3 的矩阵中!这九个数字就能完全描述一个线形变换!

[111010101]\left[ \begin{array} { r l l } { 1 } & { 1 } & { 1 } \\ { 0 } & { 1 } & { 0 } \\ { - 1 } & { 0 } & { 1 } \end{array} \right]

那么和二维的一样,通过这个矩阵我们也能算出任意向量在变换后的位置!

因为三维的实际案例不太容易演示!我们举一个比较容易想象的变换!来验证这个线形变换!

比如单纯沿着某一个标准的轴去旋转!比如沿着y轴去旋转这个三维空间!

Apr-03-2023 14-45-42

因为沿着y轴进行线形变换,所以 j 帽的坐标不会发生变换!

i帽被移动到z轴的 (0,0,-1)上!

k帽被移动到x 轴的( 1,0,0)的位置!

这三组坐标就能形成描述这一旋转变换的三列

[001010100]\left[ \begin{array} { c c c } { 0 } & { 0 } & { 1 } \\ { 0 } & { 1 } & { 0 } \\ { - 1 } & { 0 } & { 0 } \end{array} \right]

如果要知道某个向量(x,y,z)变换后的向量,计算方式就和二维下的一样!每一个坐标都对应着相对基向量的缩放!

[i&j& k ] \left[ \begin{array} \\{ x } \\ { y } \\ { z } \end{array} \right] = \left[ \begin{array} { ccc } { 0 } & { 0 } & { 1 } \\ { 0 } & { 1 } & { 0 } \\ { -1 } & { 0 } & { 0 } \end{array} \right] \left[ \begin{array} \\{ x } \\ { y } \\ { z } \end{array} \right] = x \left[ \begin{array} { c } { 0 } \\ { 0 } \\ { - 1 } \end{array} \right] + y \left[ \begin{array} { l } { 0 } \\ { 1 } \\ { 0 } \end{array} \right] + z \left[ \begin{array} { l } { 1 } \\ { 0 } \\ { 0 } \end{array} \right]


当遇到了三维中的复合变换,同样和二维函数调用的顺序一致!

fS(fR(a))fS( fR ( a ) )

当然你也可以按照变换直接计算复合转换后的基向量!

image-20230403150515363

和二维的一样!把变换后的每个方向的基向量 (i,j,k)分别求出来,然后组合

([022515141][036])([022515141][147])([022515141][258])(\begin{bmatrix} 0 & -2 & 2 \\ 5 & 1 & 5 \\ 1 & 4 & -1 \end{bmatrix}\begin{bmatrix} 0 \\ 3\\ 6 \end{bmatrix}) ( \begin{bmatrix} 0 & -2 & 2 \\ 5 & 1 & 5 \\ 1 & 4 & -1 \end{bmatrix}\begin{bmatrix} 1 \\ 4\\ 7 \end{bmatrix} ) ( \begin{bmatrix} 0 & -2 & 2 \\ 5 & 1 & 5 \\ 1 & 4 & -1 \end{bmatrix}\begin{bmatrix} 2 \\ 5\\ 8 \end{bmatrix} )

第一次变换后的i帽变换第二次的求解,,jk同理求出后去组合=>0[051]+3[214]+6[251] 第一次变换后的i帽变换第二次的求解,,jk同理求出后去组合=> 0 \left[ \begin{array} { l } { 0 } \\ { 5 } \\ { 1 } \end{array} \right] + 3 \left[ \begin{array} { c } { - 2 } \\ { 1 } \\ { 4 } \end{array} \right]+ 6 \left[ \begin{array} { c } { 2 } \\ { 5 } \\ { - 1 } \end{array} \right]

总之,二维和三维的思想都差不多,只不过是多出了一个维度的计算!计算方式和思想都是一致的!

0

评论区