Compartir a través de


Complementos de Recognizer

Un complemento de reconocedor es un objeto que supervisa el movimiento del lápiz de tableta para gestos, escritura a mano u otros objetos.

Gestos del sistema

El objeto RealTimeStylus reconoce gestos del sistema. El objeto RealTimeStylus agrega un objeto SystemGestureData a la cola StylusQueues en respuesta a los datos que finalizan el gesto, como un objeto StylusUpData para SystemGesture. Para obtener más información, vea Datos de complemento y la clase RealTimeStylus.

El objeto GestureRecognizer

El objeto GestureRecognizer implementa las interfaces IStylusSyncPlugin e IStylusAsyncPlugin . El objeto GestureRecognizer reconoce gestos de aplicación. Internamente, el objeto GestureRecognizer usa el reconocedor de gestos de Microsoft para realizar el reconocimiento de gestos.

Cuando el objeto GestureRecognizer reconoce un gesto, agrega datos de lápiz personalizados a la cola StylusQueues en respuesta al objeto StylusUpData del trazo. La propiedad CustomDataId del objeto CustomStylusData se establece en el valor GestureRecognitionDataGuid y la propiedad Data del objeto CustomStylusData contiene un objeto GestureRecognitionData.

En el diagrama siguiente se muestra cómo el objeto GestureRecognizer agrega datos a los datos del lápiz de tableta.

ilustración del flujo de datos de gesturerecognizer

En este diagrama, el círculo con letra "SD" representa un objeto StylusDownData y los círculos con letra "P" representan objetos PacketsData que ya se han agregado a la cola de salida del objeto RealTimeStylus y que aún no se han enviado a la colección de complementos asincrónica. El círculo con letras "SU" representa un objeto StylusUpData que el objeto RealTimeStylus está procesando actualmente. Se envía a la colección de complementos sincrónica y, a continuación, se coloca en la cola de salida. Los círculos con letras "GR" representan datos de lápiz óptico personalizados agregados a la cola de entrada por el complemento GestureRecognizer en respuesta a la notificación de lápiz ascendente asociada a "SU". Los datos de lápiz personalizados con letra "GR" se pasan a los complementos sincrónicos y, a continuación, a la cola de salida antes de que se procesen los siguientes datos del lápiz de tableta. El círculo vacío representa la posición de la cola de salida donde se agregan datos futuros del lápiz de tableta.

De forma predeterminada, el objeto GestureRecognizer solo reconoce gestos de un solo trazo; Sin embargo, el objeto GestureRecognizer se puede establecer para reconocer gestos de varias pulsaciones. Para los gestos de varias pulsaciones, el objeto CustomStylusData se agrega a la cola StylusQueues en respuesta al objeto StylusUpData para el trazo final del gesto. Al reconocer gestos de varias pulsaciones, puede recibir notificaciones para conjuntos de trazos superpuestos. Por ejemplo, los trazos primero y segundo juntos se pueden reconocer como un gesto y el segundo trazo por sí mismo se puede reconocer como un gesto. Para obtener más información sobre el reconocimiento de gestos de varias pulsaciones, vea la clase GestureRecognizer y la propiedad MaxStrokeCount .

Si usa el objeto GestureRecognizer para el reconocimiento de gestos de varias pulsaciones, puede lograr un rendimiento óptimo mediante un modelo RealTimeStylus en cascada y adjuntar el objeto GestureRecognizer al objeto RealTimeStylus secundario. Para obtener más información sobre el modelo realTimeStylus en cascada, vea El modelo Cascaded RealTimeStylus.

Consideraciones especiales

En la lista siguiente se describen otros puntos que se deben tener en cuenta al usar el objeto GestureRecognizer .

Reconocimiento de gestos personalizados

Puede crear un complemento de reconocedor personalizado que reconozca la escritura a mano, los gestos u otros objetos mediante:

  • Pasar la información del trazo a un objeto Recognizer existente y usar el método AddCustomStylusDataToQueue para agregar los resultados al flujo de datos del lápiz de tableta.
  • Realizar el reconocimiento dentro del complemento y usar el método AddCustomStylusDataToQueue para agregar los resultados al flujo de datos del lápiz de tableta.

Gestos de aplicación

Gestos del sistema

Escala de tiempo de mensajes del mouse y eventos del sistema