Класс android.hardware.GeomagneticField имеет метод getDeclination, который мы можем использовать для поиска истинного севера. Все примеры, которые я видел на StackOverflow и других сайтах добавить это значение к магнитному северу, чтобы найти истинный север, как это:Почему мы добавляем магнитное склонение?
True north = Magnetic North + Declination
Но пост в этом вопросе предполагает, что это может быть неправильно: Using orientation sensor to point towards a specific location
К сожалению, никто не прокомментировал или проголосовал за сообщение.
В документации на Android говорится, что при положительном значении «означает, что магнитное поле вращается на восток, что сильно отличается от истинного севера». И у this page есть несколько цифр, которые показывают то же самое: «Положительное склонение - магнитный север к востоку от истинного севера». Другими словами, склонение определяется как это:
Declination = Magnetic north - True North
переставить найти истинный север на основе магнитного севера:
True north = Magnetic north - Declination
Таким образом, правильно добавить или вычесть склонение ? И если это правильно, то почему?