Геокод API Google Maps находит поблизости KML - PullRequest
2 голосов
/ 18 января 2011

Я видел, как многие люди спрашивают об этом в дискуссионных группах Google Карт для продуктивного обсуждения, поэтому я решил попробовать здесь.

Цель: создать карту поиска в API Карт Google, которая может возвращать "близлежащие" результаты из набора данных при вводе адреса пользователя.

Мой подход до сих пор: я начал с помещения точек данных в KML, поскольку он а) легко используется API Карт Google и б) документом XML, и поэтому его легко перебирать. Насколько я понимаю, метод Geocode является базовой точкой входа API для любой пользовательской географической информации. Я подумал, что мне нужно, чтобы Geocode возвращал значения широты и долготы, затем вычислял расстояние между этой точкой и каждой меткой в ​​файле KML, используя формулу Haversine, и, наконец, отображал точку, кратчайшее расстояние от широты и долготы пользователя.

Я видел немного Javascript, который выполняет вычисления Haversine, но неясно, как заставить API читать все точки данных в файле KML. Google опубликовал полезный документ о том, как сделать это с помощью PHP и базы данных MySQL db , но не слишком помогает в ситуации с KML.

Итак: как заставить Google Maps API искать и анализировать KML?

Спасибо!

1 Ответ

1 голос
/ 15 февраля 2011

Вы не можете получить доступ к элементам внутри KML в Maps API V3.Все, что вы можете сделать, это загрузить свой KML с XMLHttpRequest и анализировать и проходить, как и любой другой XML.Затем рассчитайте расстояние, и вы сможете отобразить свои маркеры из кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...