【问题标题】:get x, y, z values from Phonegap compass从 Phonegap 指南针获取 x、y、z 值
【发布时间】:2012-04-23 22:28:02
【问题描述】:

我正在与我的团队一起开发增强现实应用程序。我们决定选择 phonegap 作为将其开发为 webapp 的框架。 我们使用 Three.js 框架将增强现实绘制到画布中。

我的问题是让相机旋转根据手机的移动工作。我在互联网上搜索了几天,但无法得到它。 实际的想法是使用 android SDK 中的 getRotationMatrix() 方法并将其重写为 javascript。但问题是从指南针获取 x、y、z 数据。 phonegap 仅提供相对于地理北极的方位(0 .. 360),但 getRotationMatrix() 方法使用 x、y、z 值。

是否可以将轴值折射出航向值或直接获取?

您还有其他想法来计算所有三个轴上的相机旋转吗?

非常感谢您的任何提示!

【问题讨论】:

    标签: javascript cordova axis compass-geolocation heading


    【解决方案1】:

    您可以使用 html5 设备方向。 效果很好

    我添加了一个关于它的教程: http://html5rocks.com/en/tutorials/device/orientation

    【讨论】:

      【解决方案2】:

      指南针会给你一个方向,但加速度计会给你设备的 x、y、z 值。请参阅我们文档中的示例:

      http://docs.phonegap.com/en/1.6.1/cordova_accelerometer_accelerometer.md.html#accelerometer.getCurrentAcceleration

      【讨论】:

      • 感谢您的回答,但这不是我想要的。我真的很想得到 x、y、z 罗盘值。我最终编写了自己的 Phonegap 插件来获取这些值。
      • @chsymann,可以和我们分享你写的插件吗?
      • @chsymann 我认为你混淆了概念。如果你想要它作为一个旋转矩阵,你可以假设罗盘方向是你的 Z 旋转,但是你必须发明 X 和 Y。对于本质上是一维传感器的指南针,您希望 X 和 Y 旋转轴是什么?
      • @Mateu 嘿,很久以前我就在做这个,但我浏览了我的项目并找到了插件部分。我的时间目前很少,所以我无法深入了解它并确切地告诉你如何让它工作,但我提醒 phonegaps 文档对这部分很好。这里只是插件的东西..希望你能让它工作。 pastie.org/5721888(Android 的 Java 代码)pastie.org/5721909(Phonegaps JS)。注意:这仅适用于android。您需要自己实现 ios 或其他任何东西的原生内容。
      • 谢谢!最后我设法找到了解决问题的 html5 替代方案:html5rocks.com/en/tutorials/device/orientation
      猜你喜欢
      • 1970-01-01
      • 2019-05-26
      • 1970-01-01
      • 1970-01-01
      • 2019-05-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多