首页 文章

谷歌 Map KML图层初始缩放和中心

提问于
浏览
-1

我在网页上有一个现有 Map ,使用以下脚本段进行缩放和居中:var mapOptions = {center:{lat:43.57023,lng:-79.48676},zoom:12} map = new google.maps.Map (document.getElementById(“map-canvas”),mapOptions);

然后我使用以下命令添加kml图层:var myLayer = new google.maps.KmlLayer({url:“”}); myLayer.setMap( Map );

这一直是去年的工作 . 但是我必须更新kml文件以包含更广泛的区域 . 新的kml文件有效但新的缩放和中心位置未得到遵守 .

map = new google.maps.Map(document.getElementById("map-canvas"), {
  center: { lat: 48.0, lng: -89.0 },
  zoom: 4

});

相反, Map 缩小了,所以我看到3个完整的地球加上每一边的一点,中心位于北极之上 . 您可以在http://www.a711lions.ca/recycleforsight/locationmap.htmlhttp://www.a711lions.ca/recycleforsight/locationmap2.html看到两个不同的结果 .

我已经读过我可以使用layer.preserveViewport设置来克服这个问题,但我试图理解它为什么会发生这种情况 . AFAICT的分数都在加拿大(他们肯定不会出现在三重地球视图中的其他地方)所以为什么KML层如此巨大?

有任何想法吗?

1 回答

  • 1

    您的KML文件包含一个坏点:

    <Placemark>
        <name>Dr. Sibbald</name>
        <description><![CDATA[<br><b>Address:</b> Applewood Shopping Ctre, Suite 210, 1077 N. Service Rd<br><b>City:</b> Mississauga<br><b>Postal Code:</b> L5R 2X5<br><b>Telephone:</b> (905)273-9009<br><b>Sponsoring Club:</b> Mississauga Credit Valley Lions Club]]></description>
        <styleUrl>#icon-503-DB4436</styleUrl>
        <Point>
            <coordinates>-3.0,90.0,0.0</coordinates>
        </Point>
        <!-- ... -->
    </Placemark>
    

    它位于北极 .

相关问题