Google地图是否支持Google地球等KML地区?
Google在这里给出了很好的区域描述/教程:
https://developers.google.com/kml/documentation/regions
专门提及Google地球,但不提及谷歌地图。
根据https://developers.google.com/kml/documentation/kmlelementsinmaps Google Maps DOES支持KML区域,但https://developers.google.com/kml/documentation/mapsSupport未明确提及它们。
Zoom levels in kml files on google maps 在这个问题上也很暧昧。
我创建了自己的测试KML文件(几乎从谷歌逐字逐句窃取):
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>Flat Region</name>
<Region>
<LatLonAltBox>
<north>37.430419921875</north>
<south>37.41943359375</south>
<east>-122.080078125</east>
<west>-122.091064453125</west>
</LatLonAltBox>
<Lod>
<minLodPixels>128</minLodPixels>
</Lod>
</Region>
<GroundOverlay>
<name>Mountain View DOQQ</name>
<Icon>
<href>http://data.bcinfo3.barrycarter.info/graphpaper.gif</href>
</Icon>
<LatLonBox>
<north>37.430419921875</north>
<south>37.41943359375</south>
<east>-122.080078125</east>
<west>-122.091064453125</west>
</LatLonBox>
</GroundOverlay>
</Document>
</kml>
你可以在这里看到:
缩小时,图像仍然可见(尽管如此) 白色正方形)即使每侧只有几个像素。
KML文件中的“minLodPixels”设置是否为128 它一旦占用少于128就应该停止可见 像素?
如果是这样,这会证明Google地图不支持KML地区吗?
还是我误解了什么?
答案 0 :(得分:0)
我不能给你一个完整的解决方案,但我试图避免在一年前使用地图中的区域过度拥挤我的点(在SO上问了一个类似的问题)而且我的理解是KmlLayer不会识别区域而是只是加载一切。我能找到的唯一参考是论坛帖子,例如:http://code.google.com/p/gmaps-api-issues/issues/detail?id=3142
那说我当时的理解是通过使用API在javascript中添加叠加层和区域来实现这一点 - 我只是看了一下,我找不到一个很好的例子(或任何一个例子)
在我看来,虽然在地图缩放时显示/隐藏之前编写自定义叠加并覆盖绘图功能以考虑叠加的大小应该非常容易:https://developers.google.com/maps/documentation/javascript/overlays#Drawing < / p>
当我们实现我们需要的一些功能时,我打算采用的路径是什么 - 但是没有解决直接从KML实现的问题。有趣的是,您链接到指示它受支持的文档。