我正在尝试将KMZ文件加载到Google Map API的顶部,但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>
最佳答案
The document is too large:
返回KmlStatus为“ DOCUMENT_TOO_LARGE”:
公斤状态:DOCUMENT_TOO_LARGE
original link(不再有效)
Limits:
Google Maps中KML渲染的大小和复杂度限制
Google Maps当前对已加载的KML文件的大小和复杂性有特定的限制。以下是当前限制的摘要:
注意:这些限制是暂时的,随时可能更改。
提取的最大文件大小(原始KML,原始GeoRSS或压缩的KMZ)3MB
未压缩的最大KML文件大小10MB
最大网络链接数10
文档范围内的全部功能的最大数量1,000
您的KML为18.3 MB,必须小于10MB。
您的选择是:
将您的KMZ文件分解为2个包含KML 使用第三方KMZ解析器(例如geoxml3),但这可能会导致性能问题。 Example using geoxml3 (kmz branch) and your KMZ hosted on my server)