ホイール メニュー コントロールを作成しています。アイデアは、操作したいアイテムが表示されるまでホイールを回転させてから、それをクリックするなどです。ユーザーのマウスの動き (x & y) をホイールを回転させる角度に変換する方法を理解しようとしています。私はそれをすべて実装できますが、変換を行うための計算が不足しています。ヘルプやポインタをいただければ幸いです。
1028 次
2 に答える
4
ユーザーがマウスを [x1,y1] から [x2,y2] に移動した場合、基本的に必要なのは
θ=θ 1 -θ 2
どこ:
θ 1 = Math.atan2(y1, x1);
θ 2 = Math.atan2(y2, x2);
これはすべて、原点 (ホイールの中心) を定義する場所によって異なります。原点が [x0,y0] の場合、実際のマウス座標からそれらの値を差し引くだけです。
また、画面上では座標系が上下逆になっているため、0,0 は左下ではなく左上にあるため、反転する必要がありますが、計算は本質的に同じです。
また、角度は度ではなくラジアンで測定されることに注意してください。
于 2010-11-09T08:31:38.467 に答える
1
コントロールのatan2()
中心からオフセットされた 2 つの後続の位置の を取得し、角度のデルタに定数を掛けて値を変更します。
于 2010-11-09T07:13:17.010 に答える