识别器插件

识别器插件是一个对象,用于监视平板电脑笔的移动,以查找手势、手写或其他对象。

系统手势

RealTimeStylus 对象识别系统手势。 RealTimeStylus 对象将 SystemGestureData 对象添加到 StylusQueues 队列,以响应完成手势的数据,例如 SystemGestureStylusUpData 对象。 有关详细信息,请参阅 插件数据和 RealTimeStylus 类

GestureRecognizer 对象

GestureRecognizer 对象实现 IStylusSyncPluginIStylusAsyncPlugin 接口。 GestureRecognizer 对象识别应用程序手势。 在内部, GestureRecognizer 对象使用 Microsoft 手势识别器来执行手势识别。

GestureRecognizer 对象识别手势时,它会将自定义触笔数据添加到 StylusQueues 队列,以响应笔划的 StylusUpData 对象。 CustomStylusData 对象的 CustomDataId 属性设置为 GestureRecognitionDataGuid 值,CustomStylusData 对象的 Data 属性包含一个 GestureRecognitionData 对象。

下图演示 了 GestureRecognizer 对象如何将数据添加到平板电脑笔数据。

gesturerecognizer 数据流的插图

在此图中,带“SD”的圆圈表示一个 StylusDownData 对象,而带“P”的圆圈表示已添加到 RealTimeStylus 对象的输出队列且尚未发送到异步插件集合的 PacketsData 对象。 带“SU”的圆圈表示 RealTimeStylus 对象当前正在处理的 StylusUpData 对象。 它被发送到同步插件集合,然后放置在输出队列中。 字母为“GR”的圆圈表示由 GestureRecognizer 插件添加到输入队列的自定义触笔数据,以响应与“SU”关联的触笔向上通知。 然后,在处理下一个平板电脑笔数据之前,将自定义触笔数据(字母为“GR”)传递到同步插件,然后传递到输出队列。 空圆表示在输出队列中添加未来平板电脑笔数据的位置。

默认情况下, GestureRecognizer 对象仅识别单笔划手势;但是,可以设置 GestureRecognizer 对象来识别多击手势。 对于多击手势, CustomStylusData 对象将添加到 StylusQueues 队列中,以响应笔势最后笔划的 StylusUpData 对象。 识别多击手势时,可能会收到有关重叠笔划集的通知。 例如,第一个和第二个笔划可以一起识别为一个手势,第二个笔划本身可以识别为一个手势。 有关多击笔势识别的详细信息,请参阅 GestureRecognizer 类和 MaxStrokeCount 属性。

如果使用 GestureRecognizer 对象进行多击手势识别,则可以通过使用级联 RealTimeStylus 模型并将 GestureRecognizer 对象附加到辅助 RealTimeStylus 对象来实现最佳性能。 有关级联 RealTimeStylus 模型的详细信息,请参阅 级联 RealTimeStylus 模型

特殊注意事项

以下列表描述了使用 GestureRecognizer 对象时要考虑的其他要点。

自定义手势识别

可以通过以下方式创建自定义识别器插件来识别手写、手势或其他对象:

应用程序手势

系统手势

鼠标消息和系统事件的时间线