Laden...

Bewegungsrichtung der Maus feststellen

Erstellt von EyeTrackJack vor 2 Jahren Letzter Beitrag vor 2 Jahren 352 Views
E
EyeTrackJack Themenstarter:in
35 Beiträge seit 2019
vor 2 Jahren
Bewegungsrichtung der Maus feststellen

Hallo,

ich suche nach einer Möglichkeit, festzustellen, in welche Richtung die Maus bewegt wird. Allerdings will ich das auch wissen, wenn der Mauscursor schon am Bildrand ist und man die Maus weiter in diese Richtung bewegt

Was kann man da machen?

Grüße.

Tobias

S
248 Beiträge seit 2008
vor 2 Jahren

Hallo EyeTrackJack,

Raw Input könnte die Lösung sein. Wenn man weiter zu Mauseingaben geht, gibt es relative Bewegungsinformationen. Allerdings weis ich nicht, ob diese von Windows am Bildschirmrand auch abgeschnitten werden. Das müsste man noch evaluieren.

In welcher Art von Umgebung benötigst du diese Information? 3D (Spiel)?

Grüße
spooky

E
EyeTrackJack Themenstarter:in
35 Beiträge seit 2019
vor 2 Jahren

Es geht im Prinzip um MIDI Daten. Ich will einen Regler bauen, der mit der Mausposition arbeitet.

Der Hintergrund ist die Verwendung von einem Head-Tracker, also ein Eingabegerät, das die Kopfbewegung erfasst. Damit will ich die Maus steuern. Das Problem ist, dass sich der damit erreichbare Bildschirmbereich ständig verändert. Somit ist nie garantiert, dass ich einen Schieberegler jederzeit an eine beliebige Position schieben kann. Deshalb brauche ich relative Koordinaten.

In Spielen funktioniert es ja auch, dass man die Maus endlos in eine Richtung bewegen kann und man sich dadurch die ganze Zeit dreht.

2.078 Beiträge seit 2012
vor 2 Jahren

Ist 'ne Weile her, dass ich das gemacht habe, aber ich hatte es damit gemacht:
Hooks - Win32 apps

Du registrierst einen Hook für die Maus (SetWindowsHookEx) und trackst einfach die Maus-Position.
Position vorher und aktuell ergeben einen Vektor, ergo: Du hast die Richtung.

Ob das alles auch aufgerufen wird, wenn man am Rand angekommen ist, weiß ich nicht, aber Du könntest dir mit einem kleinen Trick behelfen.
Wenn Du am Rand angekommen bist, setzt Du die Maus einfach einen Pixel vom Rand weg.
Wie gut das funktioniert, weiß ich aber nicht, doch ein Versuch ist es sicher wert.