(Moderator)
Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
Delphi 2006 Professional
|
Re: Spezielle Mausbewegungen erkennen
15. Apr 2008, 16:00
ich würde sobald die Maus sich x pixel vom letzten punkt weg bewegt diesen in eine Liste packen wo beispielsweise die letzten 100 Positionen drin stehen. Dann einfach diese Punkte nehmen und auf eine bestimmte größe skalieren so das es später keine rolle spielt ob der user einen großen oder kleinen Kreis "gemalt" hat. Dann dein Muster nehmen welches auf die gleiche Größe skaliert sein sollte und prüfen ob alle punkte des musters auch in den letzten punkten drin sind (natürlich eine gewisse tolleranz lassen.
Letzendlich ist das ganze unabhängig davon ob es mit der Maus gemacht wird oder nicht. Denn die eigentliche Aufgabe ist zu prüfen ob ein Muster in einem anderen enthalten ist.
(Die liste der letzten 100 Punkte (oder wieviele man auch immer maximal zulässt) natürlich leeren beim down der Taste und dann den Vergleich beim Mouseup der Taste starten. Wenn die geforderte Geste übereinstimmen soll und nicht nur enthalten sein soll im "gezeichneten", dann müssen beide "bilder" aufeinander geprüft werden)
Jens Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
|