ScreenTapGesture类(Leap:: ScreenTapGesture)

本文介绍了ScreenTapGesture类,它是Leap Motion SDK中用于识别手指或工具进行屏幕点击手势的一个类。文章详细阐述了如何配置参数来识别屏幕点击手势,并提供了关键API的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ScreenTapGesture类(Leap:: ScreenTapGesture)

这里写图片描述

这个类代表了手指或工具的一种点击手势。当手指的顶端向前戳,然后回弹到原来的位置,如同点击一个垂直的屏幕一样,则被识别为屏幕点击手势。在开始点击之前,点击的手指一定要简短的暂停。注意,为了用这个手势,一定要打开使能“开关”,见Gesture类。
屏幕点击手势是离散的,描述点击的ScreenTapGesture对象总是会有停止的状态:STATE_STOP。每个识别了的屏幕点击手势只创建一个ScreenTapGesture对象。
可以用一个连接了的Controller对象的配置属性来设置把一个运动识别为屏幕点击所要求的手指移动和速率的最小值,还要调整检测窗口来估计运动。用以下keys来配置屏幕点击识别:

这里写图片描述

下面的例子说明了如何配置这些参数,在设置这些参数之前要把Controller对象和Leap Motion的服务/守护进程连接起来。
controller.config().setFloat(“Gesture. ScreenTap.MinForwardVelocity”, 30.0);
controller.config().setFloat(“Gesture. ScreenTap.HistorySeconds”, .5);
controller.config().setFloat(“Gesture. ScreenTap.MinDistance”, 1.0);
controller.config().save();
Vector direction(): 表示手指顶端的运动方向。
用法:Leap::Vector pokeDirection=ScreenTap.direction();
ScreenTapGesture(): 表示构造一个新的ScreenTapGesture对象。没有初始化的Gesture对象被认为是无效的。从Frame对象中得到ScreenTapGesture类的有效的实例。
ScreenTapGesture(const Gesture & rhs): 表示从一个Gesture对象的实例中构造出一个ScreenTapGesture对象。参数rhs是需要特定化的Gesture实例,一定要是ScreenTapGesture对象。
用法:if (gesture.type()==Leap:: ScreenTapGesture:: classType())
ScreenTapGesture =Leap:: ScreenTapGesture(gesture);
Pointable pointable(): 表示实现这个屏幕点击手势的手指。
用法:Leap:: Pointable poker=screentap.pointable();
Vector position(): 表示记录屏幕点击的位置。
用法:Leap::Vector pokePosition=screentap.position();
float progress(): 对于屏幕点击手势,这个值始终为1.
Type classType(): 表示屏幕点击手势的类别。返回TYPE_SCREEN_TAP。

译自:https://developer.leapmotion.com/documentation/cpp/api/Leap.ScreenTapGesture.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值