画面にホイールがあり、回転可能です。ユーザーがホイールをスワイプすると、スワイプの方向に基づいて回転を開始する必要があります。回転方向(時計回りまたは反時計回り)以外のすべての機能を終了しました。ユーザーがホイールをスワイプする方向を見つけるのに役立つ人は誰でもいます。
ありがとう
回転は
解決策1:
時計回り
反時計回り:
反対側:
より複雑な数学を使ったより良い解決策がありますが、それは単純なものです。
更新これもシンプルで優れています!
解決策2:解決策2:
ホイールの中心(x、y)とタッチ(x、y)の間の角度を計算します。
double angleRad = atan2(dy/dx), where dy = touch.y - wheel.y, and dx analog.
タッチイベントごとにこれを行います。角度が増加している場合は時計回り、それ以外の場合は反時計回りです。
_direction = 1;
if(_startPoint.y < rotarCenter.y) {
if(_startPoint.x > endTouchPoint.x)
_direction = -1;
}
else if(_startPoint.y > rotarCenter.y) {
if(_startPoint.x < endTouchPoint.x)
_direction = -1;
}
if(_startPoint.x < rotarCenter.x && endTouchPoint.x < rotarCenter.x) {
if(_startPoint.y < endTouchPoint.y)
_direction = -1;
else
_direction = 1;
}
else if(_startPoint.x > rotarCenter.x && endTouchPoint.x > rotarCenter.x) {
if(_startPoint.y > endTouchPoint.y)
_direction = -1;
else
_direction = 1;
}