In einem iOS-Prototyp verwende ich eine Kombination aus CMDeviceMotion.deviceMotion.yaw und CLHeading.trueHeading, um eine stabile Kompassrichtung zu erstellen, die reaktionsschnell und genau ist. Dies funktioniert gut, wenn das iPhone flach gehalten wird, wo ich einen grafischen Pfeil habe, der auf eine stabile Kompassrichtung zeigt.CMDeviceMotion Gierwerte instabil, wenn das iPhone senkrecht steht
Das Problem tritt auf, wenn das iPhone im Portait-Modus vertikal gehalten wird. Die UIDeviceOrientation wechselt ständig von UIDeviceOrientationFaceDown zu UIDeviceOrientationFaceUp und zurück. Dies bewirkt, dass der Gierwert basierend auf kleinen Änderungen der Tonhöhe um +/- 180 Grad vor und zurück springt. Ist es möglich, das Gerät in einer Ausrichtung zu verriegeln, die einen stabilen Gierwert liefert, die Änderung ohne Störungen vorherzusagen oder das Gyroskop-Gieren (oder das Rollen in dieser Ausrichtung) auf andere Weise zu berechnen?
Dieser arme Kerl hat das gleiche Problem, ohne Antworten. Doppelte Punkte mögliche Leute! :) https://stackoverflow.com/questions/10470938/euler-angle-yaw-not-working-when-iphone-orientation-changes
Es tat einfach, DANKE !!! –
@ blkph19 können Sie bitte auf meine Antwort Ich konnte nicht den gesamten Code in den Kommentarabschnitt passen. – Deveram