問題タブ [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.

0 投票する
0 に答える
323 参照

ios - cmdevicemotionは更新の提供を停止します

コードに奇妙な問題があり、理解できず、助けが必要です。AppDelegateでCMMotionManagerを定義しました。ビューコントローラで、プロパティを定義します。

次に、このコードを使用して更新を開始します。

ただし、handleDeviceMotionは数回だけ呼び出され、その後deviceMotion出力の更新を停止します。コードをプッシュスタイル(ブロックコード)に変更しましたが、その場合、ブロックは実行されません!ブロック内のテストNSLogコメントは実行されません。そのコードは次のようになります。

handleDeviceMotionコードは次のようになります。

最初の方法では、「テスト」が数回印刷された後、停止します。

motionManagerをプロパティとして保持することで、リリースされることを心配する必要はないと思いましたが、どこかでリリースされているようです(または何か他のことが起こっていると思いますか?)。

助けてくれて本当にありがとうございます。

0 投票する
1 に答える
2290 参照

ios - iOS推測航法

私は、GPS が利用できないときに単純な推測航法を行う必要がある iOS プロジェクトに取り組んでいます。さまざまな電話から、以下で構成される一連の測定データが提供されました。

  1. GPS データ (x、y、z、コース、速度) (利用可能な場合)
  2. 加速度計 (ユーザー加速度 x、y、z)
  3. ジャイロスコープ (回転率 x、y、z)

時系列で欠落している GPS 位置を計算したい。最後の GPS 位置とコースの値に基づいて位置を予測する方法は理解していますが、これでは大きな誤差が生じます。私の質問は、加速度計とジャイロスコープのデータを組み合わせると、より良い結果が得られるかどうかです。加速度計の値を統合して速度情報を取得する方法は理解していますが、ジャイロスコープ データの使用方法がわかりません。どんな助けでも大歓迎です。

0 投票する
1 に答える
714 参照

iphone - CMMotionManager と UIAccelerometer の使用

次のことについてどうすればよいですか: 空間を横切るデバイスの動きをキャプチャしたい。

つまり、デバイスが部屋の 3 次元空間で正確に移動した iOS フレームワークを使用して知る方法はありますか? そしてそれはどのくらい速く動いたのですか?

良いチュートリアルを見つけるのに苦労したので、良いチュートリアルに案内してください。

0 投票する
1 に答える
1319 参照

ios - iOSで標高と磁場を取得する方法

iOSで標高値と磁場値を取得しようとしています。私はそれらの主題について長い間グーグルで検索してきましたが、適切に機能するものを見つけることができませんでした.

a)標高値について話しているとき、モバイルの上部を上に動かしたときの角度を度単位で取得したいと思います。わかりやすいように画像を添付しました。私はそのように試みてきましたが、うまくいきません:

.h

.m

b) 磁場については、モバイルの精度に影響を与えるデバイス、磁石、鉄などの影響を取得したいと考えています。* このソリューションでは、得られるすべての値が正しくありません (一種の NSTimer の内部):

理解する方法はありますか....ありがとう

0 投票する
1 に答える
982 参照

objective-c - CoreMotionは私にロール、ピッチ、ヨーを与えません

sBeforeはiOSから非推奨になり、ピッチ、ロール、ヨーを計算するために、およびこのクラスUIAccelerometerのデータを使用しました。フィルタリングも行う必要がありましたが、ライブラリを使用すると、クラスからこれらのデータを取得でき、これらのプロパティを実際に使用したいのですが、どういうわけかそうできません。xyzCoreMotionCMAttitude

今、私がしたことはインスタンス化することです

からx、y、zを読み取ることはできますが、からmotionManager.accelerometerData.acceleration.<x,y or z>読み取ろうとするとattitude.<roll,pitch,yaw> 0になります。

100msごとに連続タイマーでトリガーされるメソッドで値を読み取ります。

私が欠けているものについて何かアイデアはありますか?

0 投票する
1 に答える
3868 参照

iphone - iPhoneが加速モードまたはアイドルモードのときにCMMotionManagerのstartAcceleratingおよびstopAcceleratingを開始および停止するにはどうすればよいですか?

加速に関するアプリを開発しています。オブジェクトを使用していCMMtionManagerます。しかし、startacceleratingメソッドを呼び出すと、アイドルモードのiPhoneでもそのメソッドが機能し、継続的に呼び出されます。iPhoneが加速してアイドル状態のときに加速を停止して開始する方法。

私を助けてください。

0 投票する
4 に答える
19812 参照

ios - CMMotionManager で傾斜角を測定する

iPhone/iPad を縦向きに、画面を手前にして正面に垂直に持っているとします。画面を自分に向けたまま、デバイスを片側に傾けます。CMMotionManager を使用してその静的傾斜角をどのように測定しますか? 簡単な答えがあるはずの簡単な質問のようですが、四元数と回転行列に消えない方法は見つかりません。

誰かが私に実際の例を教えてもらえますか?

0 投票する
3 に答える
869 参照

iphone - CMMotionManager - CMMotionManager のみを使用して見出しを取得する

CLLocationManager を使用してコンパスの方位を取得できましたが、アプリは既に CMMotionManager を使用しているため、CMMotionManager のみを使用して方位を測定したいと考えています。

すべての Apple のあいまいなドキュメントと同様に、それらの API の使用方法を推測する必要があります。

これを使用して見出しを測定しようとしました

問題は、このブロックがほんの数秒実行されて停止することです。

CMMotionManager のみを使用してヘディングを測定する方法の例はありますか?

ありがとう。

0 投票する
1 に答える
929 参照

ios - CMDeviceMotion の経過時間を秒単位で判断する方法

ゲーム中にデバイスのモーション更新をオンまたはオフにできるようにしたいと考えています。しかし、それらをオフにしてから再び戻すと、CMMotionManager の .deviceMotion プロパティは、最後の既知の deviceMotion をしばらくの間 (約 0.5 秒、新しい値を計算できるようになるまで) 返します。

したがって、取得した CMDeviceMotion オブジェクトの年齢をテストし、数秒より古い場合は無視できるようにしたいと考えています。

CACurrentMediaTime() - deviceMotion.timestamp を計算すると、正確な結果が得られるようです..しかし、これが将来のデバイスまたは iOS バージョンで壊れるのではないかと心配しています。デバイスのモーション タイムスタンプは、今後も CACurrentMediaTime() と同等であることが保証されていますか? CMDeviceMotion タイムスタンプの経過時間を計算するより良い方法はありますか?

Appleのドキュメントから:

CACurrentMediaTime()

mach_absolute_time() を呼び出し、結果を秒に変換することによって得られる CFTimeInterval。

deviceMotion.timestamp

タイム スタンプは、電話が起動してからの秒単位の時間です。