Erkennungs-Plug-Ins

Ein Erkennungs-Plug-In ist ein Objekt, das die Bewegung des Tablet-Stifts auf Gesten, Handschrift oder andere Objekte überwacht.

Systemgesten

Das RealTimeStylus-Objekt erkennt Systemgesten. Das RealTimeStylus-Objekt fügt der StylusQueues-Warteschlange ein SystemGestureData-Objekt als Reaktion auf die Daten hinzu, die die Geste beenden, z. B. ein StylusUpData-Objekt für systemGesture. Weitere Informationen finden Sie unter Plug-In-Daten und die RealTimeStylus-Klasse.

Das GestureRecognizer-Objekt

Das GestureRecognizer-Objekt implementiert die Schnittstellen IStylusSyncPlugin und IStylusAsyncPlugin . Das GestureRecognizer-Objekt erkennt Anwendungsgesten. Intern verwendet das GestureRecognizer-Objekt die Microsoft-Gestenerkennung, um die Gestenerkennung auszuführen.

Wenn das GestureRecognizer-Objekt eine Geste erkennt, fügt es der StylusQueues-Warteschlange benutzerdefinierte Eingabestiftdaten als Reaktion auf das StylusUpData-Objekt für den Strich hinzu. Die CustomDataId-Eigenschaft des CustomStylusData-Objekts wird auf den GestureRecognitionDataGuid-Wert festgelegt, und die Data-Eigenschaft des CustomStylusData-Objekts enthält ein GestureRecognitionData-Objekt.

Das folgende Diagramm veranschaulicht, wie das GestureRecognizer-Objekt den Tablet-Stiftdaten Daten hinzufügt.

Abbildung des Gestenerkennungsdatenflusses

In diesem Diagramm stellt der Kreis mit dem Buchstaben "SD" ein StylusDownData-Objekt dar, und die Kreise mit dem Buchstaben "P" stellen PacketsData-Objekte dar, die bereits der Ausgabewarteschlange des RealTimeStylus-Objekts hinzugefügt wurden und noch nicht an die asynchrone Plug-In-Auflistung gesendet wurden. Der kreisförmige Schriftzug "SU" stellt ein StylusUpData-Objekt dar, das das RealTimeStylus-Objekt gerade verarbeitet. Sie wird an die synchrone Plug-In-Sammlung gesendet und dann in der Ausgabewarteschlange platziert. Die Kreise mit dem Schriftzug "GR" stellen benutzerdefinierte Eingabestiftdaten dar, die der Eingabewarteschlange vom GestureRecognizer-Plug-In als Reaktion auf die Benachrichtigung des Eingabestifts hinzugefügt werden, die "SU" zugeordnet ist. Die benutzerdefinierten Eingabestiftdaten mit dem Schriftzug "GR" werden dann an die synchronen Plug-Ins und dann an die Ausgabewarteschlange übergeben, bevor die daten des nächsten Tablet-Stifts verarbeitet werden. Der leere Kreis stellt die Position in der Ausgabewarteschlange dar, an der zukünftige Tablet-Stiftdaten hinzugefügt werden.

Standardmäßig erkennt das GestureRecognizer-Objekt nur Einzelstrichgesten. Das GestureRecognizer-Objekt kann jedoch so festgelegt werden, dass es mehrstufige Gesten erkennt. Bei Mehrfachgesten wird das CustomStylusData-Objekt der StylusQueues-Warteschlange als Reaktion auf das StylusUpData-Objekt für den letzten Strich der Geste hinzugefügt. Wenn Sie Multistrokegesten erkennen, erhalten Sie möglicherweise Benachrichtigungen für überlappende Sätze von Strichen. Beispielsweise können der erste und der zweite Strich zusammen als eine Geste erkannt werden, und der zweite Strich selbst kann als Geste erkannt werden. Weitere Informationen zur Multistroke-Gestenerkennung finden Sie unter der GestureRecognizer-Klasse und der MaxStrokeCount-Eigenschaft .

Wenn Sie das GestureRecognizer-Objekt für die Erkennung mehrerer Gesten verwenden, können Sie eine optimale Leistung erzielen, indem Sie ein kaskadiertes RealTimeStylus-Modell verwenden und das GestureRecognizer-Objekt an das sekundäre RealTimeStylus-Objekt anfügen. Weitere Informationen zum kaskadierenden RealTimeStylus-Modell finden Sie unter Das kaskadierte RealTimeStylus-Modell.

Besondere Überlegungen

In der folgenden Liste werden weitere Punkte beschrieben, die bei der Verwendung des GestureRecognizer-Objekts zu berücksichtigen sind.

Benutzerdefinierte Gestenerkennung

Sie können ein benutzerdefiniertes Erkennungs-Plug-In erstellen, das Handschriften, Gesten oder andere Objekte wie folgt erkennt:

Anwendungsgesten

Systemgesten

Zeitachse von Mausnachrichten und Systemereignissen