以前、幾何計算はベクトルで考えるときれいにプログラミングできるというコツを書きました。 その続編として、図形のズームや回転、移動があるときには、ベクトルは必須ですよという話。 拡大縮小と回転には変換行列、これは習いましたね? これは高校の代数幾何学で習ったはずです。座標をベクトルで表せば、特定の行列をかけるだけで拡大縮小と回転ができること。 横にx倍、縦にy倍のズームはで、 原点を中心にθ度の回転はです。 試しにやってみましょう。(10,10)を横に2倍、縦に0.5倍でズームすると (10,10)を90°回転させると 行列による座標変換のいいところは、変換行列同士を掛け合わせてしまうことができることです。何段階かの変換も、その行列を掛け合わせてたった一つの行列にできるので、記述も簡潔になるしなにより計算が早い。不可逆な変換でなければ、逆行列を求めることで逆変換も簡単に記述できます。 でも、