Как узнать местоположение по широте / долготе? - PullRequest
1 голос
/ 21 июня 2011

У меня есть различные значения широты и долготы в базе данных (Sqlite3) для различных мест. Теперь у меня есть текущая широта и долгота. Как я могу узнать ближайшие места с текущей позиции. Пожалуйста, предложите.

Ответы [ 3 ]

2 голосов
/ 21 июня 2011

Полагаю, вы говорите об обратном геокодировании. Для этого есть класс Apple, MKReverseGeocoder . Существует также множество практических обсуждений, таких как здесь , здесь и т. Д.

0 голосов
/ 21 июня 2011

Я смею сказать, что @Kongress - лучший ответ здесь, но я просто собираюсь засунуть этот вопрос в кольцо, так как сама концепция - та, с которой я имел дело раньше.

Я не могу рассказать вам, как создать его в target-c, но для нашего обратного поиска по широте и долготе я построил K-DTree из значений лота по лату в нашей базе данных (> 250 000) и это дает нам поиск менее 100 наносекунд на настольном оборудовании. На iphone это все еще, вероятно, будет довольно быстро - память может быть проблемой, хотя вам действительно нужно иметь возможность кэшировать экземпляр в памяти, чтобы быть действительно полезным; его сборка занимает немного времени (наша сборка занимает около 1,5 секунд).

Просто идея.

0 голосов
/ 21 июня 2011

Синтаксис, вероятно, потребуется изменить, но взгляните на этот вопрос, который использует MySQL .По сути, вы хотите создать прямоугольник с текущей точкой в ​​центре (скорее всего).Используя границы этого нового окна, вы можете выполнить свой SQL-запрос.

...