Я видел, как многие люди спрашивают об этом в дискуссионных группах 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?
Спасибо!