Encoding 谷歌地图API-几何编码-类型错误:a.lat不是函数
我有一个阵列中的地质点列表,如下所示:Encoding 谷歌地图API-几何编码-类型错误:a.lat不是函数,encoding,google-maps-api-3,typeerror,geopoints,Encoding,Google Maps Api 3,Typeerror,Geopoints,我有一个阵列中的地质点列表,如下所示: var coordinates = [[50.7, 6.7], [49.5, 7.0], ...] google.maps.geometry.encoding.encodePath(coordinates) 当我尝试使用encodePath将代码缩小为时,会出现以下错误: TypeError:a.lat不是一个函数 我的代码如下所示: var coordinates = [[50.7, 6.7], [49.5, 7.0], ...] google.m
var coordinates = [[50.7, 6.7], [49.5, 7.0], ...]
google.maps.geometry.encoding.encodePath(coordinates)
当我尝试使用encodePath
将代码缩小为时,会出现以下错误:
TypeError:a.lat不是一个函数
我的代码如下所示:
var coordinates = [[50.7, 6.7], [49.5, 7.0], ...]
google.maps.geometry.encoding.encodePath(coordinates)
有什么想法吗?我终于找到了解决办法!问题是
encodePath
需要一个google.maps.LatLng
对象,而不仅仅是GeoPoints
下面是一个函数,它可以将上面描述的数组转换为编码字符串:
function encodeLatLngPolygon(array) {
var polyOptions = {
strokeColor: '#000000',
strokeOpacity: 1.0,
strokeWeight: 3
}
poly = new google.maps.Polyline(polyOptions);
var path = poly.getPath();
for(var i=0;i<array.length;i++) {
var xyz = new google.maps.LatLng(parseFloat(array[i][0]).toFixed(2), parseFloat(array[i][1]).toFixed(2));
path.push(xyz);
}
var code = google.maps.geometry.encoding.encodePath(path)
return code;
}
函数encodeLatLngPolygon(数组){
var多选项={
strokeColor:“#000000”,
笔划不透明度:1.0,
冲程重量:3
}
poly=新的google.maps.Polyline(多选项);
var path=poly.getPath();
对于(var i=0;i