Google API - KMZ文件未显示在网络地图中

时间:2015-04-17 10:43:53

标签: javascript google-maps google-maps-api-3 kml kmz

我正在尝试将KMZ文件加载到Google Map API的ontop上,并且KMZ文件没有出现。下面是我的代码,当我加载HTML时,一切都正常执行 - 缺少KMZ文件。我试图通过仅将一个要素图层与整个地图文档转换为KMZ来最小化文件的大小,但我遇到了同样的问题。

想法?

 <!DOCTYPE html>
<html>
<head>
<title>Map Title, USA</title>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAx70-         gnDWt1nCCf_pLezTNqZfH2G_im04"></script>
<script>
function initialize() 
{
var mapProp = {
   center:new google.maps.LatLng(38.89,-77),
   zoom:12,
   mapTypeId:google.maps.MapTypeId.SATELLITE
};
    var map = new google.maps.Map(document.getElementById("googleMap"),mapProp);

    var kmlPath = https://sites.google.com/site/geos455assignment/data_files/assignment-4/Turi_Kristen_GEOS455_Assign4.kmz';
    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>`
</head>

<body>
<div id="googleMap" style="width:1384px;height:936px;"></div>
</body>

</html>

1 个答案:

答案 0 :(得分:1)

The document is too large

返回KmlStatus“DOCUMENT_TOO_LARGE”:

  

Kml状态:DOCUMENT_TOO_LARGE

  

Google地图中KML渲染的大小和复杂性限制

     

Google地图目前对加载的KML文件的大小和复杂性有特定限制。以下是当前限制的摘要:

     

注意:这些限制是暂时的,可能随时更改。

  • 最大提取文件大小(原始KML,原始GeoRSS或压缩KMZ)3MB
  • 最大未压缩KML文件大小10MB
  • 最大网络链接数10
  • 文档范围内的最大功能总数1,000

你的KML是18.3 MB,它需要小于10MB。

您的选择是:

  1. 将您的KMZ文件分成2个单独的文件,其中包含KML&lt; 10 MB
  2. 使用第三方KMZ解析器(如geoxml3),但可能存在性能问题。 Example using geoxml3 (kmz branch) and your KMZ hosted on my server)