for WPF developers
Home Profile Tips 全記事一覧

原点を中心に座標を回転する

(2017/05/16 7:42:08 created.)

まず、通常の座標系 (e_x,e_y) を、原点を中心に時計回りに θ[deg] だけ回転させた座標系 (e_x',e_y') を考えます。このとき、次式が成り立ちます。



e_* はその方向の基底ベクトルを表します。一般的には上方向が縦軸の正方向ですが、アプリケーション上では下方向が正であるため、ここでは下方向を正として考えています。

つまり、元の座標系 (e_x,e_y) における点 (x,y) を、原点を中心に時計回りに θ[deg] だけ回転させた点は、(x cos⁡θ + y sin⁡θ, -x sin⁡θ + y cos⁡θ) となります。
アプリケーション上での原点は、例えばウィンドウの左上点であったり、パネルコントロールの左上点であったりします。