在Google地图中使用KMZ文件

kao*_*ify 12 kml kmz google-maps-api-3

我有什么方法可以在谷歌地图中使用KMZ文件吗?我的KML文件大约为10.7MB,因此无法在Google地图上加载.KMZ文件大约2MB.我看到它的唯一方法是拥有多个KML,但它的工作量太大了.我可能最终会这样做,但只是想知道KMZ是否可以使用?

谢谢.

Mik*_*rey 17

是的,您可以使用Maps API指定KMZ文件:

var kmzLayer = new google.maps.KmlLayer('http://www.kmzlinks.com/redirect.asp?id=110&file=PalmIsland%2Ekmz');
kmzLayer.setMap(map);
Run Code Online (Sandbox Code Playgroud)

在您的特定情况下,您的脚本应如下所示:

<script type="text/javascript">
  function initialize() {
    var myOptions = {
      center: new google.maps.LatLng(58.33, -98.52),
      zoom: 11,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
    var kmzLayer = new google.maps.KmlLayer('http://xeenat.com/energy/data.kmz');
    kmzLayer.setMap(map);
  }
</script>
Run Code Online (Sandbox Code Playgroud)

但是 - 你的KML太大了.尽管它作为KMZ压缩到2MB,但是地图在解压缩之后会查看大小,而在你的情况下,它会大于10MB.尝试将其缩小一点 - 如果您将KMZ URL替换为上面第一个片段中的KMZ URL,它将起作用.看起来您需要使用多个KML文件.也许您可以将KMZ加载到Google Earth中,然后将每个省份保存为自己的文件(右键单击Earth的"Places"选项卡中的文件夹,然后选择另存为...)