今日は回転長方形にマウスイベントの座標を必要とするターンテーブルの回転方向に沿って指をしようとすることができます。
まず、傾きを見つけ、それは、原点(0,0)とするように傾斜Y / X
circleControl.recY/circleControl.recX
傾斜角が順に知られているが、Math.atan得ラジアンを使用することができ、角度のニーズはさらにに変換します
Math.atan(circleControl.recY/circleControl.recX)/(Math.PI/180)
ちょうど原点(0,0)と仮定的に言えば、実際に書かれたQMLまたはグラフィカルプログラミングは、実際には、グラフであるグラフ(幅/ 2、高さ/ 2)の原点(0,0)である、ことを知っていますグラフの左上隅にあるので、Xを取り、yはまた思考のビットを必要とし、正確な点は、以下のコードを取ることです。
//mouse是鼠标坐标(手指坐标)
circleControl.recX=mouse.x-rectangle.width/2;
circleControl.recY=rectangle.height/2-mouse.y;
その後、グラフィックを0にデフォルトを回転するが、0実際には90度の数学的座標角度に等しく、そして回転が時計回りの回転が増加され、数学的な観点で相違がある場合。数学的な角度で得られたパターンは、結果を減算後、0度、360度となり、それが反時計回りにすることができるように、90度の角度を追加する必要があります。
circleControl.rotation=450-Math.atan(circleControl.recY/circleControl.recX)/(Math.PI/180);