Как показать компас на экране?

Я новичок в iOS-разработке. Моя цель - показать компас на экране. У меня есть широта и долгота определенного места. Я получил свою текущую широту и долготу с помощью CLLocation.

Я рассчитал расстояние между двумя точками с помощью API, но теперь я хочу знать правильное направление моего телефона N/S/E/W и что-то вроде правильного северного полюса... Я не уверен.

Есть ли какая-то концепция северного полюса iPhone и фактического северного полюса?

Я хочу показать линию, указывающую на определенную долготу и широту, даже если мой телефон вращается или движется; линия указывает только на эту точку.

Пожалуйста, помогите мне, куда мне теперь двигаться? Любое руководство или ссылки/тут будет здорово.


person Rohit Singhal    schedule 02.10.2011    source источник
comment
Возможно связаны? stackoverflow.com/questions/3675643 /   -  person Paul Peelen    schedule 03.10.2011


Ответы (1)


Это называется «заголовком» CLLocation.

См. часть документа CLLocationManager для настройки направления для вашего приложения и вызова startUpdatingHeading для получения уведомлений об изменениях вашего направления, а именно, когда ваш iPhone указывает на другую точку.

Затем используйте стандартные методы CLLocationManagerDelegate, чтобы получать информацию об изменениях заголовка и соответствующим образом перерисовывать линию.

Прочтите Руководство по программированию определения местоположения, чтобы получить дополнительную информацию о службах определения местоположения и заголовке, особенно эта часть, которая даже содержит пример кода.


PS: Насчет двух разных северов нет понятия "айфон северный полюс", это не имеет никакого отношения к самому айфону. В географических системах необходимо учитывать два северных ориентира: магнитный северный полюс, который определяется в соответствии с магнитным полем Земли, и истинный северный полюс, который определяется в соответствии с осью вращения Земли.

Это также подробно объясняется в Руководстве по программированию определения местоположения (как и все; всегда читайте Руководства по программированию, которые в целом являются отличными и очень полными ресурсами):

Значения курса могут сообщаться относительно либо магнитного севера, либо истинного севера на карте. Магнитный север представляет собой точку на поверхности Земли, из которой исходит магнитное поле планеты. Это место не совпадает с Северным полюсом, который представляет истинный север. В зависимости от местоположения устройства магнитный север может быть достаточно хорошим для многих целей, но чем ближе вы подходите к полюсам, тем менее полезным становится это значение.

person AliSoftware    schedule 02.10.2011
comment
Если это решило вашу проблему, не забудьте отметить свой вопрос как решенный, поставив галочку слева, чтобы она стала зеленой; это поможет другим узнать, что на ваш вопрос был дан ответ. Спасибо - person AliSoftware; 04.10.2011