【问题标题】:simple add kml layer in google maps html在谷歌地图html中简单添加kml层
【发布时间】:2013-11-17 23:32:13
【问题描述】:

我关于谷歌地图 API 的第一个问题。这段代码的作用是将我们引导到地图上的一个位置。问题是我正在尝试向其中添加像折线这样的谷歌对象,但我在网页上看不到它们。

1.为什么我看不到绘制的折线?

如何将 1. 折线 2.kml 图层 3.xml 数据从单独的文件添加到下面代码的按钮中。

    <!--
        var mapa;       // obiekt globalny
        var dymek;      // okno z informacjami
        var geokoder    = new google.maps.Geocoder();

        var rozmiar             = new google.maps.Size(32,32);
        var rozmiar_cien        = new google.maps.Size(59,32);
        var punkt_startowy      = new google.maps.Point(0,0);
        var punkt_zaczepienia   = new google.maps.Point(16,16);
        var ikona               = new google.maps.MarkerImage("http://maps.google.com/mapfiles/kml/pal3/icon52.png", rozmiar, punkt_startowy, punkt_zaczepienia);
        var cien                = new google.maps.MarkerImage("http://maps.google.com/mapfiles/kml/pal3/icon52s.png", rozmiar_cien, punkt_startowy, punkt_zaczepienia);
        var wskaznik            = new google.maps.Marker({icon: ikona, shadow: cien});

        function mapaStart()
        {
            var wspolrzedne = new google.maps.LatLng(37.7671, -122.4206);
            var opcjeMapy = {
                zoom: 15,
                center: wspolrzedne,
                mapTypeId: google.maps.MapTypeId.ROADMAP,
                disableDefaultUI: true
            };
            mapa = new google.maps.Map(document.getElementById("mapka"), opcjeMapy);
            dymek = new google.maps.InfoWindow();

            // Creating an array that will contain the points for the polyline 
            var route = [     
                new google.maps.LatLng(37.7671, -122.4206),       
                new google.maps.LatLng(34.0485, -118.2568)    
            ];          // Creating the polyline object 

            var polyline = new google.maps.Polyline({
                path: route, strokeColor: "#ff0000",
                strokeOpacity: 0.6,      
                strokeWeight: 5     });        
            // Adding the polyline to the map 
            polyline.setMap(map);      



            geokoder.geocode({address: 'Szczecin, Krzywoustego 23'}, obslugaGeokodowania);



        }


        function skoczDoAdresu(adres)
        {
            wskaznik.setMap(null);
            geokoder.geocode({address: adres}, function(wyniki, status)
            {
                if(status == google.maps.GeocoderStatus.OK)
                {
                    mapa.setCenter(wyniki[0].geometry.location);
                    wskaznik.setPosition(wyniki[0].geometry.location);
                    wskaznik.setMap(mapa);
                    dymek.open(mapa, wskaznik);
                    dymek.setContent('<strong>Poszukiwany adres</strong><br />'+adres);
                }
                else
                {
                    alert("Nie znalazłem podanego adresu!");
                }
            });
        }

        function obslugaGeokodowania(wyniki, status)
        {

        }

    -->
</script>

【问题讨论】:

  • 你做了什么来添加KmlLayer或来自XML的信息?

标签: javascript google-maps geolocation kml


【解决方案1】:

您看不到折线,因为“​​地图”未在此行中定义:

// Adding the polyline to the map 
polyline.setMap(map);    

您的 javascript 控制台应该会告诉您,google.maps.Map 对象称为“mapa”

【讨论】:

  • 这太有趣了。我非常确定这是不同的东西。是的,效果很好,谢谢。
猜你喜欢
  • 2012-04-19
  • 1970-01-01
  • 1970-01-01
  • 2017-08-10
  • 2019-08-06
  • 2022-06-18
  • 2013-08-06
  • 1970-01-01
  • 2019-03-26
相关资源
最近更新 更多