jjzjj

accelerometer

全部标签

ios - 在 SpriteKit 中使用加速度计移动和旋转 Sprite

我正在尝试使用Spritekit制作我的第一款游戏,所以我有一个Sprite需要使用我的加速度计四处移动。好吧,这样做没问题;运动非常流畅且react灵敏,问题是当我尝试旋转我的Sprite以使其面对自己的运动时,我经常让它“颤抖”,就像他患有帕金森病一样。(:D)我确实意识到,当加速度计数据在x、y轴之一上太接近0时会发生这种情况。那么问题来了:我的宠物帕金森症有治疗方法吗??:D这是一些代码:-(void)update:(NSTimeInterval)currentTime{staticCGPointoldVelocity;//staticCGFloatoldAngle;if(_l

ios - 如何检测手机何时被放下

我想在手机静止2秒时执行一个操作。我已经在google和stackoverflow周围搜索了很长时间。我发现“AccelerometerDidAccelerate”已贬值,CoreMotion是替代品。我所看到的一切都与“摇晃”Action有关。我试过阅读苹果的文档,但它让我很困惑!基本上,我希望该应用程序检测到手机上的重力在一定时间内保持在一个小限度内(表明手机已放在table或其他东西上)并让它调用和实例化或让应用程序执行某些操作。如有任何帮助,我们将不胜感激。 最佳答案 类似于SimpleiPhonemotiondetect中

ios - CMAccelerometerData 和 CMDeviceMotion 之间的区别

谁能解释一下CMAccelerometerData和CMDeviceMotion之间的区别。在我看来,CMAccelerometerData的加速度值是原始值,因为CMDeviceMotion的数据以某种方式插值,或类似的东西。 最佳答案 这些是CMAccelerometerData和cmdevicemotion之间的区别。原始加速度计数据是所有测得加速度的总和,即重力和设备当前加速度的组合。设备运动数据是所有3个传感器(即加速度计、陀螺仪和磁力计)的传感器融合的结果。因此(理论上)消除了偏差和误差,并将剩余的加速度数据分离为重力和

ios - 拍照时相机方向改变。即使方向被锁定。

我有一个拍照应用。我希望相机View的方向在设备旋转时发生变化,以便照片以拍摄时的正确方向出现。即使设备方向被锁定,我也希望它能正常工作。执行此操作的最佳方法是什么?加速度计/核心运动?非常感谢建议和教程。 最佳答案 似乎没有办法绕过CoreMotion。读出x/y加速度计数据足以确定方向。这篇博文给出了很好的介绍:http://nshipster.com/cmdevicemotion/ 关于ios-拍照时相机方向改变。即使方向被锁定。,我们在StackOverflow上找到一个类似的问

ios - 如何在 swift 中使用加速度计和重力检测苹果 watch 的位置?

我已经为AppleWatch创建了一个应用程序。逻辑是,当用户举起手并点击应用程序中的按钮时。那时我将获取加速度计值。每当用户举手并遇到捕获的位置时,我都必须向iPhone发送消息。对我来说,我得到的值是正确的但是,它总是会根据加速度计给出值。这意味着用户不会举手但加速度计值匹配。因此值将发送到移动设备。funcstartUpadateAccelerometer(){self.motionManager.accelerometerUpdateInterval=1.0/10.0self.motionManager.startAccelerometerUpdates(to:Operatio

ios - 使用 iOS 7 在后台获取步骤

我正在开发一个应用程序,我应该在其中获取我在体育锻炼期间所走的步数。我找到这段代码:-(void)countSteps{[[UIAccelerometersharedAccelerometer]setUpdateInterval:1.0/KUPDATEFREQUENCY];[[UIAccelerometersharedAccelerometer]setDelegate:self];px=py=pz=0;numSteps=0;self.labelSteps.text=[NSStringstringWithFormat:@"%d",numSteps];}-(void)acceleromet

ios - 如何计算设备移动的最后两点的加速度计

我正在制作游戏,如果手机在x轴上从零点移动到点20,我需要获取手机移动的最后两个点的加速度计,x轴上的当前加速度计等于20,我可以得到它,但我无法获得当前点(20点)之前的最后一个点(零点),这是当前点的代码:varcurrentX:Double=0.0//andtheninviewDidload:movementManager.accelerometerUpdateInterval=0.2//StartRecordingDatamovementManager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue()){

ios - 如何在从 iPhone 获得的加速度数据中找到所需的最大值?

我需要找出加速度计值流达到最大值的次数。我绘制了从iPhone获得的加速度计值随时间变化的图,使用CoreMotion方法获取DeviceMotionUpdates。记录数据时,我摇了手机9次(每个肢体都是加速度最高点之一)。我在图上的红框中标出了加速度达到最大值的18(即9*2)次。但是,如您所见,有一些我不想考虑的局部最大值。有人可以指导我找到一个想法,帮助我实现只检测对我最重要的最大值吗?编辑:我想我必须使用低通滤波器。但是,我如何在Swift中实现它呢?如何选择截止频率?编辑2:我实现了一个低通滤波器并通过它传递原始运动数据并获得如下图所示的图表。这样好多了。我仍然需要一种方法

ios - 使用加速度计和陀螺仪时的系统性能和电池使用情况

我正在从事一个结合使用加速度计和陀螺仪的项目。在我正在开发的特定应用程序中,我在需要时打开(例如.startGyroUpdatesToQueue)加速度计和陀螺仪,然后关闭(例如.stopGyroUpdates())不需要时类似于Apple的文档建议。但是,我注意到在将加速度计和陀螺仪重新打开时可能会有轻微的延迟,用户时不时会注意到这一点。因此,首选是始终保持加速度计和陀螺仪开启,以便用户获得不间断的体验。问题:1-在应用中启用加速度计和陀螺仪后,它们对系统性能和电池使用的效率如何?2-是否有关于加速度计和陀螺仪开启时系统性能和电池使用情况的证据/数据?3-有没有办法暂停加速度计和陀螺

ios - 加速度计数据不断波动

我把我的手机放在Parquet上的同一个地方。但每次我调用下面的代码片段时,这个值都在不断变化ifletaccelerometerData=motionManager.accelerometerData{letz:String="x:"+String(accelerometerData.acceleration.x)+"y:"+String(accelerometerData.acceleration.y)+"z"+String(accelerometerData.acceleration.z)print("\(z)")}这是我用来初始化和启动加速度计的代码//Acceleromete