问题标签 [cmmotionmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 你怎么知道 iPhone 是哪条路?
使用来自 iPhone 的 CMAttitude* 信息,您可以判断音高。iPhone 是垂直的,它是 90º。如果它是平坦的,它是 0º。但是我有一个应用程序需要知道 iPhone 是朝上还是朝下/向前还是向后。知道这是否可以做到吗?
ios - 如何在 iOS 8 下调整 CMMotionManager 数据的方向?
我的应用程序使用 CMMotionManager 来跟踪设备运动,但 iOS 始终以标准设备方向(底部的主页按钮)返回设备运动数据。
为了让运动数据与我的 UIView 具有相同的方向,我将视图变换从我的视图向下累积到窗口,如下所示:
此变换在 iOS 6 和 7 下正确计算,但 iOS 8 更改了旋转模型,现在无论设备如何定向,视图始终返回标识变换(无旋转)。尽管如此,来自运动管理器的数据仍然固定在标准方向。
监视 UIDevice 旋转通知并手动计算四个变换似乎是在 iOS 8 下获取此变换的一种方法,但它也似乎很糟糕,因为设备方向不一定与我的视图方向匹配(即,iPhone 上的上行是设备方向不是通常支持)。
在 iOS 8 下,将 CMMotionManager 的输出转换为特定 UIView 的方向的最佳方法是什么?
android - 什么是 iOS 的 XArbitraryZVertical 的 Android 等价物
在 iOS 中,当设置运动传感器时,开发人员可以传入一个初始化设置 (XArbitraryZVertical),该设置基本上将来自传感器当前位置的所有数据归零。我想知道是否有Android等价物?
谢谢你。
ios - IOS 上的增强现实应用程序
我正在尝试为 iOS 平板电脑编写增强现实应用程序。为此,我使用AVFoundation类将视频从相机转换为屏幕。增强对象是简单UILabels
的“在空中飞行”。即使您旋转数位板,它也必须看起来像标签在您面前并保存位置。像往常一样,我CMMotionManager
用来捕获设备陀螺仪数据。我的问题是 - 我无法正确地将设备旋转四元数应用于飞行UILabel
s。标签绕着它们自己的轴旋转,但它们必须“绕着数位板轴”旋转。如何在数学上描述这一点?现在我只知道平板电脑周围有一个假想的球体,标签位于这个球体上,当你旋转平板电脑时,这个假想的球体与标签在同一轴的相反方向旋转。我不想使用任何 3rd 方库。
xcode - 在 Sprite Kit 中响应 iPhone 的倾斜
我已经构建 Sprite Kit 游戏已经有一段时间了。就在最近我一直在添加陀螺/倾斜功能。使用CMMotionManager
,我能够轻松地访问这些数字。但是,我的问题是由于acceleration.x
值的存储方式而出现的。
你看,我的游戏是这样运行的,当游戏开始时,手机会快速校准到当前的握持方式,然后我会响应Acceleration.x值的变化(横向握持手机,这相当于将屏幕朝向和远离您倾斜。)但是,将手机平放为 1.0,将其直接朝向您倾斜为 0.0,然后如果您超出这些值,它将循环返回这些值。因此,如果有人坐直,他们的手机校准为 0.1,而他们将手机向下倾斜 0.2,结果将不会是预期的。
有什么简单的方法可以抵消这种情况吗?
augmented-reality - CMMotionData 到 SceneKit SCNNode 方向
尝试使用 CoreMotion 正确旋转 SceneKit 相机。我构建的场景非常简单......我所做的只是创建一堆盒子,分布在一个区域中,相机正好指向 Z 轴。
不幸的是,从设备运动返回的数据似乎与设备的物理位置和方向没有任何关系。它似乎只是随机地蜿蜒。
正如这篇 SO post中所建议的,我将姿态的四元数直接传递给相机节点的方向属性。
我是否误解了这里的数据核心运动给了我什么?姿态不应该反映设备的物理方向吗?还是增量运动,我应该建立在先前的方向上?
ios - 无法使用 ios 应用程序实现 CMMotionManager
如果我们倾斜设备,我正在尝试更改 UILabel 值,因为我正在尝试实现 CMMotionManager 但它对我不起作用,这是我正在使用的代码,
我在 lib 中添加了 CoreMotion。
这里有什么问题,isAccelerometerAvailable
总是错误的
startAccelerometerUpdatesToQueue
它不会开火。
任何人都可以帮助我做这个或有任何其他方式来做倾斜设备。
ios - iOS attitude.roll returning random numbers
I am using Xcode 6.1 and extracting the Pitch and Roll of the phone in the time honoured fashion:
with
The Pitch returns the correct values. But the Roll, even if the phone is vertical and not moving, will return ranges of numbers like: -168, -114, -131, 167.
Any ideas?
ios - 在 ios 中用左、右、前、后测量倾斜度
我想找到所有侧面的倾斜度(左、右、前、后)
我使用下面的代码来查找左右
现在怎么能找到前进和后退...
找到所有 4 个倾斜的最佳方法是什么...
ios - CMMotionManager 的未定义符号
我有一个较旧的 iOS 项目,并正在尝试为其添加核心动作。添加此行后出现此错误:
错误:
架构 armv7 的未定义符号:
“_OBJC_CLASS_$_CMMotionManager”,引用自:
包含 i386 架构时,我也遇到了这个错误。我现在已经删除了除 arm6 之外的所有架构,但仍然出现此错误。
motionManager 在这里声明:
我包含了 CoreMotion 框架。