Usando KML / KMZ em cima do Google Maps
Pergunta
Para testar, salvei este arquivo HTML no meu servidor. Existe uma maneira simples de incluir um arquivo KML ou KMZ aqui?
<!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&v=2&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>
Solução
Tente adicionar o seguinte JavaScript à sua função init:
var kml = new GGeoXml("http://yoururl.com/yourfile.kml");
map.addOverlay(kml)
Observe que o KML deve ser um URL publicamente acessível e há um limite de ~ 10 MB:
https://developers.google.com/kml/documentation/mapsssupport
Outras dicas
Você terá que encobrir um KML linestring para um GMAP Polyline que envolverá um pouco de manipulação manual de dados ou um analisador XML.
Você também pode tentar isso on-line Ferramenta de conversão.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow