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. LoadRunner录制Web协议的脚本 (by网络)

    LoadRunner录制Web协议的脚本  http://itindex.net/detail/50530-loadrunner-web-脚本

  2. git放弃本地修改 强制更新

    git fetch --all git reset --hard origin/mastergit fetch 只是下载远程的库的内容,不做任何的合并 git reset 把HEAD指向刚刚下载的最新 ...

  3. Server Tomcat v6.0 Server at localhost was unable to start within 45 seconds...

    仰天长啸   Server Tomcat v6.0 Server at localhost was unable to start within 45 seconds... 当启动tomcat时候出现 ...

  4. a href=#与 a href=javascript:void(0) 的区别

    a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onCl ...

  5. 关于DOS与cmd(windows系统)

    dos是计算机的最初期的操作系统,对电脑操作必须输入各种dos命令窗口,可以理解成运行计算机机器内部语言,知道编程吗?其实早期dos命令操作系统就是运行计算机内部的编程命令,因此操作人员都必须具有一定 ...

  6. 轻量级DAO层实践初体验

    最近快被 Hibernate 给坑哭了,有了自己动手实现 ORM 映射 DAO 的冲动. 工作之余折腾了快一星期,总算是有点小成就. 现打算将过程记录下来,方便自己后续回顾填补遗漏. 1. 传统 JD ...

  7. ASP.NET MVC载入页面常用方法

    @RenderBody 在Razor引擎中没有了“母版页”,取而代之的是叫做“布局”的页面(_Layout.cshtml)放在了共享视图文件夹中.在这个页面中,会看到标签里有这样一条语句: @Rend ...

  8. 配置Windows下的PHP开发环境

    一.配置 Apache 开发环境: 二.配置 PHP 开发环境 配置 Apache 开发环境 0. 下载 Apache.由于官方只提供了源码包,我们要么自己编译要么使用别人提供的已经编译好的二进制包. ...

  9. jquery submit() 提交失败

    今天写一个表单提交 居然走到$('#wechat_form').submit() 这,但怎么都没有提交这个表单 google 了一下 Additional Notes:Forms and their ...

  10. 76 mkswaP-用于设置交换区

    Linux mkswap命令用于设置交换区(swap area). mkswap可将磁盘分区或文件设为Linux的交换区. 语法 mkswap [-cf][-v0][-v1][设备名称或文件][交换区 ...