У меня есть список адресов с широтой и долготой, я хочу отсортировать их по ближайшему расстоянию до одного адреса. Может ли кто-нибудь помочь?Сортировка списка адресов по ближайшему расстоянию по широте и долготе
1
A
ответ
4
скажем ваши адреса выглядит следующим образом
{
restaurant: 'Moe\'s la Patate'
longitude: 12345,
latitude: -1234
}
и помещаются в массив с именем адреса
var addresses = [{
restaurant: 'Moe\'s la Patate'
longitude: 12345,
latitude: -1234
},{
restaurant: 'Mc Donalds'
longitude: -531,
latitude: 235
}// ...
];
и что ваша позиция в том же формате (я буду использовать позиция переменная)
Вы можете сделать расчет √ (a^2 + b^2)
var position = {
longitude: 2231,
latitude: -4211
}
var addressesByDistance = addresses.map(function(data){
var distX = position.longitude - data.longitude;
var distY = position.latitude - data.latitude;
var distance = Math.sqrt(Math.pow(distX, 2) + Math.pow(distY, 2));
return distance;
}).sort();
Это не принимает во внимание раунд до земли, но имея только 10 ресторанов, я полагаю, все они находятся в одном городе?
В любом случае, надеюсь, что это помогает
+0
Спасибо за помощь. Я использовал вашу функцию для вычисления расстояния и добавил ее к каждому элементу в качестве атрибута, затем применил сортировку вставки для сортировки по атрибуту расстояния. – PlanetHackers
Смежные вопросы
- 1. Сортировка по долготе и широте на основе начальной точки
- 2. Критерий спящего режима по широте и долготе
- 3. Сортировка списка по ближайшему местоположению
- 4. Расчет расстояния по широте/долготе
- 5. поиск радиуса по широте/долготе
- 6. Вывести время по широте/долготе?
- 7. Хранить и сортировать по расстоянию по широте и долготе Symfony2 Доктрина
- 8. C++ - Калькулятор расстояния по широте и долготе
- 9. найти Расстояние по широте и долготе
- 10. Получение ограничений по широте и долготе
- 11. Поместите маркер по широте и долготе
- 12. Как группировать массив по широте и долготе?
- 13. Расчет положения экрана по широте и долготе
- 14. Найти филиал по широте и долготе (геолокация)
- 15. Google Map Адрес по широте и долготе
- 16. Пакистан Щебетать по широте и долготе Поле
- 17. Найти ближайшие места по широте и долготе
- 18. Yahoo Прогноз погоды по широте и долготе
- 19. NullPointerException Местоположение по долготе и широте
- 20. Координаты экрана по широте и долготе
- 21. Расчет GMT Смещение по широте и долготе
- 22. Как получить город по широте и долготе?
- 23. Поиск по широте и долготе в MySQL
- 24. Геолокационная печать по широте и долготе Android
- 25. Точки сортировки/записи по широте и долготе (по расстоянию от самого дальнего до дальнего)
- 26. Найти адрес по широте и долготе не по Geocoder.getFromLocation()
- 27. Сортировка списка цветов RGB по наименьшему расстоянию
- 28. Сортировка ячеек по расстоянию
- 29. Автоматическое перемещение области по долготе/широте
- 30. Выбор результатов по почтовому индексу/долготе/широте
так что есть две части здесь, во-первых, чтобы получить расстояние для каждого адреса из вашей «один адрес». Затем сортировать их. Какая часть, в частности, вам нужна помощь? Сколько адресов в вашем списке? Как выглядит ваш код до сих пор? – duncan
Я хочу отобразить список ресторанов в ближайшем будущем. Для сортировки может быть 10 или более адресов. вот ссылка, в которой я хочу использовать: [Best of the Brunch] (http://bestofthebrunch.co.uk/restaurants/swan-at-the-globe/). Я следовал за документом из http://mobiforge.com/design-development/geo-sorting-using-device-geolocation-to-sort-distance, но не смог добиться результата. – PlanetHackers
Как выглядит ваш код до сих пор? – duncan