2017-08-06 9 views
0

OS X Sierraでusbマウスからデータを収集したいと思います。javascript/angular jsを使用しています。 私は入力をどこで見つけることができますか?usb mouse macintoshからデータを収集するos x

私はビットパケットを取得したいと思います。正確には、カーソルの位置、速度などを計算したいと思います。

+0

収集しようとしている「データ」とは何ですか?あなたは例を挙げることができますか? – duskwuff

+0

あなたの答えをありがとう。私はビットのパケットを取得したいと思います。 正確には、カーソルの位置、速度などを計算したいと思います。 –

答えて

0

https://www.w3schools.com/js/js_events_examples.asp(真剣に、これは必要なものをすべて持っているはずです)の助けを借りて、現在のマウスの位置と速度を計算する関数を作成することができます。

お探しのイベントは、onmousemoveです。ウィンドウオブジェクトにそのプロパティを渡してみてください。あなたの関数はclientXとclientYデータを含むイベントオブジェクトでも呼び出され、マウスの現在位置を追跡するために使用されます。

もちろん、マウスの速度を計算するには、マウスが最後にあった位置と現在の位置の差を知る必要があります。だから、これは動作するはずです:

var Mx = 0; // Mouse X position 
var My = 0; // Mouse Y position 
var lastSpeedx = 0; // Last movement by mouse on x axis 
var lastSpeedy = 0; // Last movement by mouse on y axis 
window.onmousemove = function (e) { 
    lastSpeedx = e.clientX - Mx; lastSpeedy = e.clientY - My; 
    Mx = e.clientX; My = e.clientY; 
} 

を私はあなたがそのUSBポートを介しています正確に何を聞きたい聞きますが、よく私はそれが正確に単純ではないんです。もしjavascriptに何らかの拡張機能があっても、マウスがあなたのコンピュータと会話するために使う何百もの異なるインターフェースを扱うのは楽しいことではありません。ドライバはこれを単純化するためにいくらか存在していますが、OSはそれをさらに単純化し、JavaScriptパーザに到達するまでにはかなり基本的です。

私は実際にC++の低レベルのUSB入力を数年前に戻していますが、私は必要なものを見つけることができませんでした。

anglejsのソリューションとともに、私はあなたに直接ソリューションを見ていきます(anglejsがタグ付けされていることを確認する前にこの回答を書いていたので)、あなたには低レベルのものがあるかどうかわかりませんさあ。

+0

あなたの答えをありがとう。実際に私はビットのパケットを取得したいと思います。正確には、カーソルの位置、速度などを計算したいと思います。すべての手がかりは? –

+0

ああ。 javascriptを使ってカーソルの位置を取得し、いくつかの変数を使ってカーソルの動きを取得することができます。私は私の答えをやり直すつもりですが、私はあなたがjavascriptの超低レベルの実装を使用していない限り、あなたのUSBポートから来ているものに正確にアクセスできるとは思いません。私はそれを見てみましょう。あなたはJavaScriptのブラウザ用にプログラミングしていますか?もしそうなら、どちらか。それ以外の場合は、どの実装を使用していますか(またはあなたのプログラムを実行するために何を使用していますか)? –

+0

あなたの答えをありがとう。それは私のための良い始まりです。実際にはデスクトップアプリケーションです。 私が本当に欲しいのは、USBからのパケットです。ビット! これはブラウザではありません。私のプログラムを走らせるために私は電子を使います。 –

関連する問題