Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las API de StylusInput permiten interactuar con el flujo de datos del lápiz de tableta. Para interactuar con el flujo de datos, agregue un objeto RealTimeStylus a la aplicación y agregue complementos al objeto RealTimeStylus.
Se proporcionan dos complementos en las API de StylusInput. El objetodynamicRendererimplementa la interfazIStylusSyncPlugin. El objeto DynamicRenderer representa la entrada de lápiz en tiempo real, ya que se está dibujando. El objetoGestureRecognizer implementa las interfaces IStylusSyncPlugin y IStylusAsyncPlugin. El objeto GestureRecognizer reconoce los gestos de la aplicación.
Definiciones
Los términos siguientes se usan en las secciones que describen las API stylusInput:
Complemento sincrónico
Clase que implementa la interfaz IStylusSyncPlugin. Los complementos sincrónicos suelen llamarse directamente mediante el objeto RealTimeStylus.
Complemento asincrónico
Clase que implementa la interfaz IStylusAsyncPlugin. Los complementos asincrónicos suelen llamarse en el subproceso de interfaz de usuario (UI) de la aplicación.
Colección de complementos sincrónica
Colección StylusSyncPluginCollection, que es una colección ordenada de objetos IStylusSyncPlugin. Normalmente, una colección de complementos sincrónica hace referencia a la colección asignada a la propiedad SyncPluginCollection de un objeto RealTimeStylus. Solo se pueden agregar complementos sincrónicos a una colección de complementos sincrónica.
Colección de complementos asincrónica
Colección StylusAsyncPluginCollection, que es una colección ordenada de objetos IStylusAsyncPlugin. Normalmente, una colección de complementos asincrónica hace referencia a la colección asignada a la propiedad AsyncPluginColle ction de un objeto RealTimeStylus. Solo se pueden agregar complementos asincrónicos a una colección de complementos asincrónica.
Complementos sincrónicos y asincrónicos
El objeto RealTimeStylus está diseñado para proporcionar acceso en tiempo real al flujo de datos desde un lápiz de tableta. Cree o use complementos sincrónicos para tareas que requieren acceso en tiempo real al flujo de datos y que no son de procesamiento computacional, como para el filtrado de paquetes. Cree o use complementos asincrónicos para tareas que no requieran acceso en tiempo real al flujo de datos, como para crear y almacenar trazos en un objeto de InkDisp.
Algunas tareas pueden ser exigentes computacionalmente pero requieren acceso en tiempo real al flujo de datos, como el reconocimiento de gestos de varias pulsaciones. Para satisfacer estas necesidades, las API de StylusInput proporcionan una realtimeStylus en cascada modelo que permite usar dos objetos RealTimeStylus, cada uno que se ejecuta en su propio subproceso. Para obtener más información sobre el modelo de realTimeStylus en cascada, vea el modelo Cascaded RealTimeStylus.
Para obtener más información sobre el uso y la creación de complementos, consulte Working with the StylusInput API.
Flujo de datos del lápiz de tableta
El objeto RealTimeStylus tiene dos colas internas que llevan los datos del lápiz de tableta, la cola de entrada y la cola de salida. Los datos del lápiz se convierten en instancias de las clases del espacio de nombres Microsoft.StylusInput.PluginData. En la lista siguiente se describe cómo el objeto RealTimeStylus controla los datos del lápiz de la tableta:
El objeto RealTimeStylus comprueba primero los objetos de datos del complemento en su cola de entrada y, a continuación, desde el flujo de datos del lápiz de tableta.
El objeto RealTimeStylus envía un objeto de datos de complemento a los objetos de su colección de complementos sincrónica. Cada complemento sincrónico puede agregar datos a la cola de entrada o salida.
Después de enviar el objeto de datos del complemento a todos los miembros de la colección de complementos sincrónicas, el objeto de datos del complemento se coloca en la cola de salida del objeto RealTimeStylus.
A continuación, el objeto RealTimeStylus comprueba el siguiente objeto de datos del complemento que se va a procesar.
Aunque la cola de salida del objeto RealTimeSty lus contiene datos, el objeto RealTimeStylus envía un objeto de datos de complemento desde su cola de salida a los objetos de su colección de complementos asincrónica. Cada complemento asincrónico puede agregar datos a la cola de entrada o salida. Sin embargo, dado que los complementos asincrónicos se ejecutan en el subproceso de la interfaz de usuario, los datos se agregan a la cola en relación con los datos del lápiz actuales que el objeto RealTimeStylus está procesando y no en relación con los datos que está procesando el complemento asincrónico.
En el diagrama siguiente se muestra el flujo de datos del lápiz de tableta a través de la objeto RealTimeStylus y sus colecciones de complementos.
En este diagrama, los círculos etiquetados como "A" y "B" representan datos de lápiz de tableta que ya se han agregado a la RealTimeStylus cola de salida del objeto y que aún no se ha enviado a la colección de complementos asincrónica. El círculo con la etiqueta "C" representa los datos del lápiz de tableta que el objeto RealTimeStylus está procesando actualmente. Se envía a la colección de complementos sincrónica y se coloca en la cola de salida. El círculo vacío representa la posición de la cola de salida donde se agregan datos futuros del lápiz de tableta.
Para obtener más información sobre cómo se agregan datos específicos a la cola y se procesan, consulte datos del complemento y la clase RealTimeStylus.
Las API de StylusInput
Las API de StylusInput residen principalmente en los microsoft.StylusInput y los espacios de nombres Microsoft.StylusInput.PluginData. Sin embargo, las API stylusInput también hacen referencia a algunas clases en el espacio de nombres de Microsoft.Ink, como la clase Tablet, la TabletPropertyDescriptionCollection colección, y las ApplicationGesture y SystemGesture enumeraciones.
Temas relacionados