iOSアプリからBluetoothを介してデータを受信し、マウスカーソルを移動させるアプリがあります。macOS - 値でマウスを移動
問題は、私がy軸でいくつかの奇妙な機能を得ることです(xは問題ありません)。
入力はdx~dy
のようになります。ここで、dx、dyはカーソルを移動する値です。次に例を示します。
-3.0〜2.0
私の出力の例:
マウスLOC:(596.0、309.0)新しいマウスLOC:(603.0、311.0)
マウスLOC:(603.0、489.0)新しいマウスLOC:(610.0、491.0)
マウスLOC:(610.0、309.0)新しいマウスLOC:(615.0、311.5)
マウスLOC:(615.0、489.0)新しいマウスLOC:(618.0、491.0)
マウスLOC:(618.0、309.0)新しいマウスLOC:(618.5、312.5)
あなたが最初に見ることができるように、より低いものより低いy座標を持っています。だから基本的にマウスは "ジャンプ"を上下に保ちます。
let mouseLoc = NSEvent.mouseLocation()
let newLoc = CGPoint(x: mouseLoc.x-CGFloat(x), y: mouseLoc.y+CGFloat(y))
CGDisplayMoveCursorToPoint(0, newLoc)
EDIT:ここ
は、入力処理する私のコードであるので、100 2の間の状態の違いを持ってする方法はありません、私は0と2の間の値を持っていたテストケースでの
これはマウスを逆転させるでしょうか?私の場合、それは上下にジャンプし、y軸に沿ってそれを動かすことはできません – kemkriszt
座標から何も追加/減算しないとしましょう。私が示したコードの後に単に 'CGDisplayMoveCursorToPoint(0、CGPoint(x:mouseLoc.x、y:mouseLoc.y))'を実行すると、カーソルはまったく動かないでしょう。それはそれを "逆"化するものではありません。すでにそれがどこにあるのかを正確に設定しています。 'mouseLoc.y'への変更は位置を移動させず、ある座標系から別の座標系に変換します。これは同じ正確な位置です。呼び出す関数に応じて異なる座標系で表現されます。 –
正直なところ、私は理解できません:)私はこの種の問題をさまざまな座標系で知っています。しかし、たとえば2Dグラフィックスを使用して、あなたがポイントするc.systemを変更すると、画面の水平中央に鏡映され、カーソルのように上下にジャンプすることはありません。しかしとにかく、それはうまくいきますThx :) – kemkriszt