【问题标题】:How to load KML file in browser如何在浏览器中加载 KML 文件
【发布时间】:2016-03-09 06:32:39
【问题描述】:

我必须在浏览器中加载 KML 文件。我已经加载了简单的 KML 文件,它运行良好,但是当我上传带有多个图像文件夹的 KML 文件时,它无法正确加载。 使用的行代码:-

               <div id="map_canvas"></div>
                <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false>"></script>
                <script>
                    var mylocation = {
                        'latitude':  -45.2427303,
                        'longitude': 115.0639984
                    };
                    var map;
                    function initialize() 
                    {
                        var myLatlng = new google.maps.LatLng( mylocation.latitude, mylocation.longitude );
                        var mapOptions = {
                            zoom: 5,
                            center: myLatlng,
                            mapTypeId: google.maps.MapTypeId.ROADMAP
                        }
                        var map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);

                        var kmlPath = '<?php echo urldecode($file_name)?>';

                        var urlSuffix = (new Date).getTime().toString();
                        var layer = new google.maps.KmlLayer(kmlPath + '?' + urlSuffix );
                        layer.setMap(map);
                    }
                    google.maps.event.addDomListener(window, 'load', initialize);
                </script>

【问题讨论】:

标签: google-maps dictionary kml


【解决方案1】:

KMLLayer 在 Google 的服务器端生成地图图块。出于这个原因,多个 KMLLayer(以及融合表层)有时不会像您预期的那样工作。 这个在官方文档中没有描述,但是这是我的经验。

我建议您将 GeoJSON 与 DataLayer 一起使用。 DataLayer 在客户端生成覆盖(标记、折线等)。 您可以轻松修改生成的叠加层。 看看吧。

https://developers.google.com/maps/documentation/javascript/datalayer#overview

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    • 2018-08-29
    • 1970-01-01
    相关资源
    最近更新 更多