在线性代数里面,讲述了,二维图形的旋转所对应的矩阵。那么,本文就利用Mathematica,形象地展示一下几何变换对应的矩阵表示。
工具/原料
电脑
Mathematica
旋转
1、我们腩柽鬣盛用ρ[u]来表示几何图形绕原点,逆时针旋转u的操作。给定点A=(a,b),旋转之后的点的坐标是:ρ[u].A={aCos[u]-bSin[u],bCos[u]+aSin[u]}
2、给定一条参数曲线B,先绘制其图像:B={Cos[x]+2,x*Sin[x^2]/10}
3、看看这条曲线绕原点旋转30°的效果:ρ[30Degree].B
4、一卺肿蓦艚系列二维点集,可以构成一个2*n的矩阵,n是点集的点数:b=Table[N[{Cos[x]+2,x*Sin[x^2]/10},{2,2魈胺闹臣}],{x,0,2Pi,2Pi/36}];
5、用矩阵ρ[36Degree],左乘(b//Transpose),可以实现点集旋转补朱锚卦36°:c=(ρ[36Degree].Transpose[b])//Transpose
平移和旋转
1、平移,其实就更简单了,就是向量的加法运算。比如,把图形B向上平移0.36个单位,就是:B+{0,0.36}
2、点A(a,b)绕点P(p,q)旋转u,得到的点的坐标,就是:ρ[u].(A-P)+P本质是:平移、旋转、平移。