Hololens开发之手势输入
来源:互联网 发布:网络保险和传统保险 编辑:程序博客网 时间:2024/05/19 12:15
手势是HoloLens三个首要输入形式之一。一旦你使用凝视定位了一个全息图像,手势允许你与它交互。手势输入允许你使用手或者点击器原生地与全息图像交互。手势之外,你也可以在应用中使用语音输入来交互。
手势识别 Hand recognition
HoloLens通过追踪手来实现手势识别。HoloLens能够明白手什么时候准备好了(竖起食指手背面向脸)或者点击(手背向脸食指点下)。当手处于其他姿势时,HoloLens将会忽略它们。
HoloLens在设备前方的锥形范围内追踪手部运动,这片区域被称为手势框(gesture frame),这拓展了全息图像显示视图的上下左右边界。这允许你手势输入时,可以舒适地保持着手臂弯曲。当使用点击器时,就不必将手保持在手势框之中。
对于每个HoloLens识别的手,你能够得到它的位置(无方向)和他的点击状态。当手接近手势框边缘时,你能得到一个方向向量,你可以提醒用户将手移回HoloLens可识别的区域。
交互 Interactions
HoloLens的核心交互是点击(press)、松开(release)和绽开(bloom)手势。点击和松开 Press and release
你选中和激活全息图像的首要方式是air-tap手势,它包含了一个点击和松开手势。
Air-tap手势,首先是指面向了脸点下,这是点击手势;随后食指向上松开,这是松开手势。Air-tap会实现对全息图像的选择,点击器或者语音命令也能做到。
绽开手势 Bloom
Bloom是很特别的系统手势,被用于从全息应用中唤起开始菜单。这和在键盘上点击Windows键或者Xbox手柄上点击Xbox按钮功能类似。
为了做Bloom手势,先攥紧拳头,手心向上,然后五指绽开。通过说:“Hey Cortanna,Go Home”也能唤起开始菜单。注意:你的应用无法刻意响应Bloom手势,因为它只能被系统响应。手势 Gesture
你的应用可以识别简单点击和松开之外更多的手势。通过移动手或使用点击器,你可以做更多复杂的手势:
- 长按Hold:保持点击手势直到触发系统长按手势阈值
- 操作 Manipulation: 保持点击手势,在3D世界中绝对运动
- 导航 Navigation: 保持点击手势,在一个标准3D立方空间内相对运动
长按手势 Hold
Hold手势和触屏上长按手势类似,被用于执行二级行为,例如拿起一个对象而不是激活它或者显示上下文菜单。
操纵手势 Manipulation
当你想要全息图像1:1响应用户手部移动时,操纵手势能被用于移动、缩放或旋转全息图像。如此的一个用处是使得用户可以在世界中绘制图像或作画。
使用所有的手势时,操纵手势的初始目标应该通过凝视来选中。一旦点击手势开始,通过手部移动的任何对对象的操作都能够被处理,在用户操作全息图像时,从而使得用户得以自由地四处张望。
操纵行为只能使用手势来实现。
导航手势 Navigation
导航手势就像一个虚拟的操纵杆,能够用于UI控件导航,例如弧形菜单。通过点击开始手势,然后在以点击处为中心的标准立方空间中移动手部。你可以沿着X、Y、Z轴移动手部,这回带来数值-1到1的变化,初始位置的值为0.
导航手势可以用于构建基于速度持续滚动或缩放的手势,这和在2D UI上通过按住鼠标滚轮上下移动类似。
定向导航是指在特定轴上识别运动直到此轴上阈值的能力。当应用中开发者启用了多轴运动,这很有用,例如如果一个应用被设置为识别X、Y轴上的运动,但同时X轴被设为定向导航。在这种情况下,如果手也在Y轴上移动,只要他们保持在X轴假想导轨区间上,系统会识别到X轴上的手势移动。
在HoloLens 2D应用内,用户可以使用垂直导航手势来滚动、缩放或在应用内拖拽。为了模拟同样类型的触摸手势,导航手势为应用虚拟了手指触摸,实际体验和触屏上的相应手势类似。用户可以通过切换Holobar上的Scroll/Drag/Zoom工具来显示相应行为。
- Hololens开发之手势输入
- Hololens开发之HoloLens简介
- hololens开发手记——Unity之语音输入
- HoloLens开发3:手势控制物体旋转
- Hololens入门之手势识别(单击、双击)
- Hololens开发之环境搭建
- 翻译微软官方HoloLens开发课程 手势识别
- [洪流学堂]Hololens开发高级篇2:手势(Gesture)
- Hololens入门之手势识别(手检测反馈)
- Hololens简单手势识别
- HoloLens开发
- Hololens开发之HoloToolkit+空间感知组件
- Hololens开发手记--Unity之Persistence
- Hololens开发之项目一: Holograms 100
- IOS开发之手势
- iOS开发之 手势
- iOS 开发之手势
- Hololens入门之手势识别(使用Navigation gesture控制物体旋转)
- 知乎网友对线程池的讲解
- 数据库补充学习(3):SQL语言分类及例子
- 菜鸟上路之oracle中rowid和rownum的使用 笔记整理
- 深度优先遍历和广度优先遍历
- 面试宝典(PART I)位运算(I)求X和Y的平均数
- Hololens开发之手势输入
- 高斯模糊
- 数组中和为0的最长子序列 三种变形
- Python自动化运维相关总结
- Lib和DLL区别及DLL的使用方法
- 数组去重,还有输入两个带值变量的交集以及并集
- Path to Python(1)
- php://filter技术分享
- 新的博客地址