0

カーソルがどのベクトルにあるかを知る条件を作成しようとしているので、画像で説明しようとしました。タブレットだと想像してください。

傾斜ベクトル

そのため、イベント ACTION.DOWN. if 条件といくつかの数式を使用する必要があることはわかっていますが、それを使用することはできません。

4

2 に答える 2

0

y/xまず、画面の中心から隅までの傾き( )を見つけます。次に、中心からカーソルまでの勾配を見つけます。絶対値を比較します。

カーソルの勾配が角の勾配よりも高い場合は、セクション 1/3 にいます。そうでなければ、あなたは 2/4 にいます。中心のどちら側にあるかを簡単に確認するだけで、そこからどちらがどちらかを判断できます。

たとえば、カーソルの傾斜が角よりも高く、カーソルが中央より上にある場合は、セクション 1 にいます。

于 2013-08-21T17:51:10.830 に答える
0

アクション ダウン イベントの座標が (x, y) で、四角形が左上の (0, 0) から右下の (w, h) まで伸びているとします。次の式を使用してイベントを分類できます ((x, y) と (w, h) と [(x, y) - (w, 0)] と [(0, h) の外積をとることによって導き出されます)。 - (w, 0)]:

  • x*h - y*w — これが正の場合、(x,y) は主対角線の上にあります
  • w*h - x*h - y*w — これが正の場合、(x,y) は短対角線の上にあります

したがって、イベントが両方の対角線より上にある場合、ベクトル 1 に最も近くなります。主対角線の上にあり、副対角線の下にある場合、ベクトル 2 に最も近くなります。等

于 2013-08-21T18:03:49.737 に答える