Gyro 2 Plugin gyro2.jsVersion 1.19
HTML5 only

本插件使用手机或平板设备上的陀螺仪和加速度传感器来控制krpano中的浏览和观看方向。

Gyro2插件对比旧的陀螺仪插件是一个完全重新设计的插件。它使用了“devicemotion”的浏览器事件加上内置传感器数据和外推法,取代了旧陀螺仪插件中的“device orientations”事件。这使得速度更快、反应更灵敏、更精准以及更为平滑的运动。它在iOS、And以及Windows Phone设备上都表现得同样良好。

设备 / 浏览器支持

  • iOS - 支持

  • Windows Phone 8 / IE11 - 支持

  • Android Chrome - 支持

  • Android Opera - 支持

  • Android Firefox - 支持

  • 旧版基于Webkit的Android浏览器 - 不支持 (不支持 'devicemotion' 事件)

注意 - 设备自身需要有加速度和陀螺仪传感器。

语法 / XML使用方法

<plugin name="gyro" devices="html5" keep="true"
url="gyro2.js"
enabled="true"
sensor_mode="1"
onavailable=""
onunavailable=""
/>

插件属性

属性名 类型 默认值  
enabled Boolean false  
  • 启用或禁止陀螺仪插件。

  • 可以任意时间改变 - 例如使用set()或者switch() 动作。

属性名 类型 默认值  
sensor_mode int 1  
  • 帧渲染与传感器数据事件是按照不同的速率进行(根据系统和浏览器有所区别),因此需要评估和推算出传感器数据以获得更平滑并且同样反应迅速的运动。

  • 通常这个设置,可以对这个进程选择不同的模式。

  • 可设置的模式:

    • 0 = 直接使用最新的可用的传感器数据。不进行插补和外推计算。根据浏览器的传感器时间间隔,运动可能会抽搐或平滑。

    • 1 = 在最新的可用的传感器数据之间进行平滑的插补计算。这会使得运动更为平滑但会有所延迟。

    • 2 = 预测设备的旋转,然后在传感器数据间进行插补计算。

    • 3 = 在当前帧的时间与最新的可用的传感器数据之间进行外推计算。这会使得反应非常灵敏以及更为平滑的晕死,但如果预测的数据和实际的运动不匹配时,可能会产生抽搐。

    • 4 = 根据当前帧预测设备旋转。这会使得反应非常灵敏以及更为平滑的晕死,但如果预测的数据和实际的运动不匹配时,可能会产生抽搐。

    • 5 = 预测设备的旋转,针对当前帧,从最新的事件中外推传感器数据。

插件事件

属性名 类型 默认值  
onavailable Action Event    
  • 在确定支持陀螺仪时响应该事件。

  • 可用于确定是否显示“陀螺仪”按钮。

属性名 类型 默认值  
onunavailable Action Event    
  • 在陀螺仪在当前设备或系统时不支持时响应该事件。.

插件动作

resetSensor(hlookat)

  • 重设传感器跟踪,转向给定的hlookat方向。

例子

krpano中文网想在电脑上获得更好阅读体验?想获得更多技巧,比别人领先一步?记住以下内容krpano中文网www.krpano360.com
点击 阅读原文 在手机上查看或在电脑上打开上述网址收藏

Gyro的更多相关文章

  1. Shader toy (顺手写两个Gyro)(纯代码写3D)

    Shader toy (A new world) 1.一个多月了,突然忘记CSDN的password了.由于每次输password的时候都要计算一遍,于是没有计算出来- 2.回头发现都过了半年了,都快 ...

  2. IIC驱动移植在linux3.14.78上的实现和在linux2.6.29上实现对比(deep dive)

    首先说明下为什么写这篇文章,网上有许多博客也是介绍I2C驱动在linux上移植的实现,但是笔者认为他们相当一部分没有分清所写的驱动时的驱动模型,是基于device tree, 还是基于传统的Platf ...

  3. 【腾讯Bugly干货分享】WebVR如此近-three.js的WebVR示例解析

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57c7ff1689a6c9121b1adb16 作者:苏晏烨 关于WebVR 最 ...

  4. android 6.0 高通平台sensor 工作机制及流程(原创)

    最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Se ...

  5. APM程序分析-ArduCopter.cpp

    该文件是APM的主文件. #define SCHED_TASK(func, rate_hz, max_time_micros) SCHED_TASK_CLASS(Copter, &copter ...

  6. GUI 和 GUILayout 的区别

    GUI 和 GUILayout 的区别 A~ GUI是Unity中的基础控件类,其中包含了常用的GUI控件,列如Button,Label,PasswordField,slider,Window等等~ ...

  7. SAP 传感器辅助定位

    一.简述 SAP:Sensor Assist Position 传感器辅助定位.高通公司提供的技术方案,旨在提升当卫星信号较差或终端短暂丢失卫星信号时终端的定位能力.该方案可分为三个阶段,第一.二阶段 ...

  8. multiwii 2.4配置页面中文注释

                                                                                                         ...

  9. px4flow通过iic读取具体寄存器数据程序

    底层通信用了昨天写好的iic,今天结合官方资料成功读出所有指定寄存器的数据附上源码 include.h主要包括了一些stm32 IO控制的宏定义,具体参考正点原子所有例程中都有的sys.h头文件 in ...

随机推荐

  1. 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)

    说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...

  2. codevs 1536 海战

    时间限制: 1 s  空间限制: 256000 KB  题目等级 : 白银 Silver 题目描述 Description 在峰会期间,武装部队得处于高度戒备.警察将监视每一条大街,军队将保卫建筑物, ...

  3. Linux 进程间通讯详解六

    ftok()函数 key_t ftok(const char *pathname, int proj_id); --功能:创建系统建立IPC通讯 (消息队列.信号量和共享内存) 时key值 --参数 ...

  4. Spring源码分析——BeanFactory体系之抽象类、类分析(一)

    上一篇介绍了BeanFactory体系的所有接口——Spring源码分析——BeanFactory体系之接口详细分析,本篇就接着介绍BeanFactory体系的抽象类和接口. 一.BeanFactor ...

  5. 基于xml的Spring多数据源配置和使用

    上一篇讲了<基于注解的Spring多数据源配置和使用>,通过在类或者方法上添加@DataSource注解就可以指定某个数据源.这种方式的优点是控制粒度细,也更灵活. 但是当有些时候项目分模 ...

  6. rsyslog配置报错解决

    配置过程中,查看/var/log/meassage 有报错信息: action '*' treated as ':omusrmsg:*' - please use ':omusrmsg:*' synt ...

  7. 多兼容的JS获取鼠标坐标

    //第一.相对于屏幕 function getMousePos(event) { var e = event || window.event; return {'x':e.screenX,'y':sc ...

  8. ssh中org.springframework.orm.hibernate4.support.OpenSessionInViewFilter的作用及配置

     org.springframework.orm.hibernate4.support.OpenSessionInViewFilter 是Spring为我们解决Hibernate的Session的关闭 ...

  9. Beta阶段第三次Scrum Meeting

    情况简述 Beta阶段第三次Scrum Meeting 敏捷开发起始时间 2016/12/12 22:00 敏捷开发终止时间 2016/12/13 22:00 会议基本内容摘要 讨论决定了APP的名称 ...

  10. iOS7时代我们用什么来追踪和识别用户?

    要识别用户,首先就是要选择一个标识符,通过这个标识符来识别这个用户的设备(而不是用户),这个标识符要能够保证一个设备上返回的值是一样的,并且在其他设备上不会出现相同的值. 在iOS7之前,曾经有过很多 ...