2010-12-09 4 views
8

Salut je cherche à être pointé dans la bonne direction en résolvant un problème que lorsque l'orientation de l'iphone change/change quelles transformations devront être effectuées sur didUpdateHeading: newHeading pour faire la valeur de CLHeading.trueHeading tourner pour toujours agir comme si le téléphone était dans l'orientation de CLDeviceOrientationLandscapeRight.iphone boussole tournant en fonction de l'orientation

Merci

+0

voir cet article - http://stackoverflow.com/questions/9260033/north-calculation-based-on-magnetometer-and-gyroscope – ratana

Répondre

0

J'ai regardé la documentation Apple. Le vrai cap est un cap compas corrigé de la différence entre le nord magnétique et le nord géographique. Sur une carte imprimée, on parle de déclinaison, et c'est parce que le vrai pôle nord et le pôle nord magnétique ne sont pas au même endroit. Le pôle magnétique dérive lentement, mais l'inclinaison de l'axe de la Terre change beaucoup plus lentement.

Une vraie boussole a une ligne sur laquelle vous vous alignez avec l'aiguille pour obtenir une lecture de la boussole. Je pense que votre question pourrait être reformulée comme: comment déplacer cette ligne de référence dans l'iPhone? Actuellement, il pointe vers le haut de l'écran en mode portrait. Pour l'obtenir en haut de l'écran dans landscapeRight (bouton d'accueil sur la gauche), vous pouvez essayer de soustraire 90 ° du cap. Si le résultat est négatif, ajoutez 360 °. Cela affecterait à la fois le cap vrai et le cap magnétique, mais il devrait déplacer la référence «nord» à l'endroit où «ouest» était auparavant (90 ° dans le sens antihoraire).

Questions connexes