首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以kml文件中标记/多段线位置为中心的脚本

以kml文件中标记/多段线位置为中心的脚本
EN

Stack Overflow用户
提问于 2013-11-19 02:12:28
回答 1查看 118关注 0票数 0

下面是一个进行地理编码的脚本,你可以输入一个城市和街道,然后它就会查找它。我只需要一个简单的脚本,可以搜索在kml文件中的位置,假设你输入了一些城市和街道,如果它是一个标记或kml文件中的折线(基本上作为一个名字),那么屏幕的中心就在它上面。只要这个简单的脚本就会受到欢迎。或者你可以告诉我如何转换这个:

代码语言:javascript
复制
    <!--
        var mapa;       
        var dymek;                  
                    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();



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


            var ctaLayer = new google.maps.KmlLayer({ url: 'http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml'});
            ctaLayer.setMap(mapa);



            //poniżej marker/tag

            var punkt = new google.maps.LatLng(53.400,14.400); // definiujemy punkt o współrzędnych 53.400,14.400
            var opcjeMarkera =
            {
                position: punkt,
                map: mapa,
                title: 'Pierwszy marker!'
            }
            var marker = new google.maps.Marker(opcjeMarkera);



        }


        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)
        {

        }

        function skoczdotaga(tag)
        {   
            wskaznik.SetMap(null);

            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("Brak planów instalacji w tym rejonie");
                }

        }

    -->
</script>
EN

回答 1

Stack Overflow用户

发布于 2013-11-19 02:34:41

Google Maps Javascript API KML不允许访问v3文件中的特性数据,除非是在单击事件中。要访问该数据,您需要执行以下任一操作:

  1. 使用第三方解析器,如geoxml3geoxml-v3 (它们将KML呈现为原生Google Maps Javascript API v3 FusionTables,并通过查询表

来访问数据

Google CTA KML with sidebar (使用geoxml3)

FusionTables example with sidebar (使用google可视化API访问融合表中的数据)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20054771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档