2016-04-05 15 views
-1

ピンを使って地図を作成しようとしていますが、数百のピンを持つことになりますが、今のところ私は少しでも試していますが、働く私はそれをリンクする方法がたくさんありましたが、どれも表示されていません。GoogleマップにkmlをリンクするJavascript APIが機能しない

私は自分のサーバーを使用しているURLに問題があると思いますが、別のサーバーが必要ですか?

私はGitHubにkmlを配置しようとしましたが、そのURLを使っても動作しませんでした。

 var kml_map = new google.maps.Map(document.getElementById('map_div'), mapOptions); 
    var kml_layer = new google.maps.KmlLayer({ 
      preserveViewport: true, 
     url: 'http://zaguan.upc.es/web/movilidad/vitrina/map/etsab.kml' 
    }); 
    kml_layer.setMap(kml_map); 

    //map.data.loadGeoJson('http://zaguan.upc.es/web/movilidad/vitrina/map/data.json'); 
    //var ctaLayer = new google.maps.KmlLayer({ 
    //url: 'http://zaguan.upc.es/web/movilidad/vitrina/map/etsab.kml' 
    //}); 
    //ctaLayer.setMap(map); 

    //google.maps.event.addListener(kmlLayer, "status_changed", function() { 
// document.getElementById('kmlstatus').innerHTML = "Kml Status:"+kmlLayer.getStatus(); 
// }); 
    //var ctaLayer = new google.maps.KmlLayer({ 
     //url: 'http://zaguan.upc.es/web/movilidad/vitrina/map/etsab.kml', 
     // map: map 
    // }); 

    //var layer = new google.maps.KmlLayer(kmlPath + '?' + urlSuffix); 
    //layer.setMap(map); 

     //var ctaLayer = new google.maps.KmlLayer({ 
     //url: 'http://zaguan.upc.es/web/movilidad/vitrina/map/etsab.kml' 
     //}); 
    //ctaLayer.setMap(map); 

私はGoogle Earthで開くことができるので、kmlが動作すると確信しています。ピンが表示されます。

はここで私が使用しているKMLです:

<?xml version='1.0' encoding='UTF-8'?> 
<kml xmlns='http://www.opengis.net/kml/2.2'> 
    <Document> 
     <name>Mobilitat ETSAB</name> 
     <description><![CDATA[Programa de mobilitat ETSAB curs 2013/14]]></description> 
     <Folder> 
      <name>Etsab Mobilitat</name> 
      <Placemark> 
       <name>EtsaB</name> 
       <styleUrl>#icon-123-nodesc</styleUrl> 
       <Point> 
        <coordinates>2.1140388999999686,41.38406519999999,0.0</coordinates> 
       </Point> 
      </Placemark> 
      <Placemark> 
       <name>Technische Universität Berlin Institut für Architektur</name> 
       <styleUrl>#icon-123-nodesc</styleUrl> 
       <Point> 
        <coordinates>13.323496299999988,52.51379379999999,0.0</coordinates> 
       </Point> 
      </Placemark> 
      <Placemark> 
       <name>Technische Universität Darmstadt Fachbereich Architektur</name> 
       <styleUrl>#icon-123-nodesc</styleUrl> 
       <Point> 
        <coordinates>8.676702699999964,49.861146500000004,0.0</coordinates> 
       </Point> 
      </Placemark> 
      <Placemark> 
       <name>Leibniz Universität Hannover - Fakultät für Architektur und Landschaft</name> 
       <styleUrl>#icon-123-nodesc</styleUrl> 
       <Point> 
        <coordinates>9.695992,52.393044,0.0</coordinates> 
       </Point> 
      </Placemark> 
     </Folder> 

     <Style id='icon-123-nodesc-normal'> 
      <IconStyle> 
       <scale>1.1</scale> 
       <Icon> 
        <href>http://www.gstatic.com/mapspro/images/stock/123-red-dot.png</href> 
       </Icon> 
       <hotSpot x='16' y='31' xunits='pixels' yunits='insetPixels'> 
       </hotSpot> 
      </IconStyle> 
      <LabelStyle> 
       <scale>0.0</scale> 
      </LabelStyle> 
      <BalloonStyle> 
       <text><![CDATA[<h3>$[name]</h3>]]></text> 
      </BalloonStyle> 
     </Style> 

    </Document> 

</kml> 
+1

実際のURLを提供していないときに役立つ方法はありません –

+0

サーバが応答しない場合 –

+0

URLを次のように変更しました。パブリックサーバー。これは今のところです:[link](http://www.etsab.upc.edu/web/movilidad/vitrina/map/etsab.kml) まだ試していません 'var kml_map = new google.maps.Map(document.getElementById( 'map_div')、mapOptions); VARのkml_layer =新しいgoogle.maps.KmlLayer({ preserveViewport:真、 URL: 'http://www.etsab.upc.edu/web/movilidad/vitrina/map/etsab.kml' })。 ' –

答えて

0

問題は、私が間違ってサーバーを使用していたということでした。ありがとうDr.Molle!

関連する問題