谷歌地图api kml填充错误
Google maps api kml filling incorrect
我有一个简单的HTML和简单的KML文件,我想在谷歌地图中显示。问题是单个多边形的填充不能正确工作。如果你看下面的例子,你可以看到多边形是在右边填充的(这对我的框架来说是正确的)。放大一个水平和填充翻转到另一边。再放大一下,它就倒过来了。缩小一次,它会翻转,缩小两次,它会回到正确的填充。当你不断缩小时,它仍然是正确的。
我在其他地方读到过使用geoxml3来解析KML,而不是让Google来做。主干下载不支持多边形,但我(认为)我下载了它的分支版本。基于此,它似乎正在解析KML并创建google.maps.Polyline对象。我的问题是,我需要显示数百(而不是数千)个多边形,并且转换KML的加载时间将受到性能限制。更不用说,我希望有谷歌的缩放级别简化的KML文件。
任何想法吗?这个已经工作了好几年了,几周前才坏掉。测试环境包括Chromium 37 (linux)、Firefox 38 (linux)、Chrome 43 (Win7)、Firefox 37 (Win7)和IE11 (Win7)。我唯一的其他选择是尝试使用google.maps.ImageMapType()与google.maps.overlayMapTypes(),这将需要相当多的重新设计?
谢谢!
HTML页面:
<html>
<head>
<style>
#mapCanvas {height: 600px;width: 600px;}
</style>
</head>
<body>
<div id="mapCanvas"></div>
<script src="http://maps.google.com/maps/api/js?v=3.&libraries=geometry,drawing,places&sensor=false"/></script>
<script>
var googleMap = new google.maps.Map(document.getElementById('mapCanvas'),
maxZoom: 20,
minZoom: 4,
zoom: 17,
panControl: true,
zoomControl: true,
scaleControl: true,
streetViewControl: true,
tilt: 0,
center: new google.maps.LatLng(39.77420517, -94.83232857)
});
var kml = new google.maps.KmlLayer('http://itic.occinc.com/new5.kml',
preserveViewport: true,
suppressInfoWindows:true,
clickable: false,
map: googleMap
});
</script>
</body>
<html>
和KML(以防它从我的服务器上消失):
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Folder>
<name>District Polygon Folder</name>
<open>1</open>
<description></description>
<Placemark>
<name>Folder object 2 (Polygon)</name>
<Polygon>
<altitudeMode>clampToGround</altitudeMode>
<outerBoundaryIs>
<LinearRing>
<coordinates>
-94.84433855, 39.53505883
-94.83010566, 39.82194139
-94.59858395, 39.8204777
-94.59383965, 39.53213146
-94.84433855, 39.53505883
</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</Placemark>
</Folder>
</kml>
Google KML渲染器有一个bug。
发行8015
您可能在KML中设置了不正确的坐标格式。以下是谷歌文档的节选(向上滚动):
四个或多个元组,每个元组由的浮点值组成经度、纬度和海拔。海拔分量是可选的。不要在元组中包含空格。最后一个坐标必须是和第一个坐标一样。坐标用十进制表示度。
所以逗号后面的空格可能会给你带来麻烦。
另外,我相信google地图显示的kml文件有大小限制。因此,您可能会在显示数千个形状时遇到麻烦。
- 类型错误:url未定义extjs 4正在填充组合框
- ObjectId数组将不会在没有错误的情况下填充
- 使用 JS 填充 HTML 表,数据顺序错误
- 用来自 Javascript 的错误填充 JSP 中的错误字段
- 使用 PHP 填充引导输入 - 字符串变量中出现空格错误
- 尝试在不可扩展对象上定义属性时,弱映射填充项引发错误
- 填充隐藏字段Microsoft JScript 运行时错误:对象不支持此属性或方法
- Jquery 移动导航栏填充错误:太窄
- 填充导致错误的按钮启动
- HTML5地理位置地址表单填充器未捕获语法错误:意外的标记<
- Mongoose异步填充错误.未正确调用方法
- Chrome弧形路径填充错误的解决方法
- jquery mobile 1.3.1填充顶部在初始页面加载时计算错误
- 更改Img属性时出现填充数组错误
- 数组填充顺序错误
- Javascript数据表填充数据问题(没有返回错误)
- 猫鼬错误:在填充模型时没有为模型注册架构
- 解析器返回未填充的承诺'Dojo中的错误
- 输入类型提交错误填充
- 适配器错误.填充