1.Controller
控制器类是您的Leap Motion控制器的主要接口。
创建这个控制器类的实例,访问跟踪数据和配置信息的帧。帧数据可以在任何时候使用frame()轮询功能,调用frame() 或 frame(0) 以获得最新的帧,将历史参数设置为一个正整数,以访问前一帧,一个控制器可以存储在其帧历史中的帧有60帧
当创建一个控制器对象时,您可以选择通过一个选项来设置不同的控制器属性。
var controller = new Leap.Controller({
host: '127.0.0.1',
port: 6437,
enableGestures: true,
frameEventName: 'animationFrame',
useAllPlugins: true});
Leap Motion Controller类继承自Node.jsEventEmitter <http://nodejs.org/api/events.html>类。
options (Object) –--一个包含该控制器选项值的对象:
host
— 提供Leap Motion跟踪数据。通常 local host address:127.0.0.1
.port
— WebSocket服务器监听端口. 默认port6437
.enableGestures
— 使用手势识别background
— 当不应用前景使用这个应用程序接受帧optimizeHMD
— 使用头戴式显示器。frameEventName
— 用于处理帧数据的更新循环类型。animationFrame
---使用浏览器动画循环 (通常 60 fps).deviceFrame
---帧速率(20 to 200 fps ,根据用户的设置和可用的计算能力).
useAllPlugins
- 默认False,告诉控制器使用该页中包含的所有插件
loopWhileDisconnected
— 默认true
, 这意味着动画帧循环运行在任何时候. 如果false
,动画循环并只运行在controller()对象连接到Leap Motion服务. 且只有当一个新的数据帧是可用的,设置为false
可以节约资源, 但可能不规则地减慢或停止任何动画驱动的帧循环。 这是LeapJS version 0.4.3添加的。