行列を呼び出すとMatrix.postScale( sx, sy, px, py );
、(指定された点 x、y に応じて) スケーリングされ、変換されます。この方法は、特定の 1 点に簡単に焦点を合わせることができるため、画像のズームに使用することができます。
android doc では、次のようにメソッドを説明しています。
指定されたスケールで行列を後連結します。M' = S(sx, sy, px, py) * M
M は 3x3 行列であるはずなので、一見これはばかげているように見えます。掘り下げてみると、Android は計算に 4x4-Matrix を使用していることがわかりました (API では 3x3 のみを提供しています)。このコードは C で書かれているため、実際に何が起こっているのかを理解するのに苦労しています。
私が実際に知りたいこと: Java コード内でアクセスできる 3x3 マトリックスにこの種のスケーリング (焦点を合わせた) を適用するにはどうすればよいですか?