Использование KML / KMZ поверх карт Google - PullRequest
1 голос
/ 12 февраля 2010

Для проверки я сохранил этот HTML-файл на моем сервере. Есть ли простой способ добавить сюда файл KML или KMZ?

<!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>Google Maps JavaScript API Example</title>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABCDEFghijetc&sensor=false"
            type="text/javascript"></script>
    <script type="text/javascript">

    function initialize() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng(59.082089,5.649456), 18, G_SATELLITE_MAP);
        map.setUIToDefault();
      }
    }

    </script>   </head>   <body onload="initialize()" onunload="GUnload()">
    <div id="map_canvas" style="width: 800px; height: 600px"></div>   </body> </html>

Ответы [ 2 ]

3 голосов
/ 16 февраля 2010

Попробуйте добавить следующий JavaScript в вашу функцию инициализации:

var kml = new GGeoXml("http://yoururl.com/yourfile.kml");
map.addOverlay(kml)

Обратите внимание, что KML должен быть общедоступным URL, и существует ограничение ~ 10 МБ:

https://developers.google.com/kml/documentation/mapsSupport

1 голос
/ 16 февраля 2010

Вам придется преобразовать строку KML в Gmap Polyline , что потребует немного ручного манипулирования данными или синтаксического анализатора XML.

Вы также можете попробовать этот онлайн-инструмент конвертации .

...