是否可以通过客户端使用带编码折线的Google Elevation API?
我知道有
https://maps.googleapis.com/maps/api/elevation/json?key=" + Meteor.settings.public.googleMaps + "&locations=enc:" + encodedPath
但这不适用于客户端,只能服务器端。或者我错了?
我似乎无法让这个通过电梯对象工作。
elevator.getElevationAlongPath({
path: L.PolylineUtil.encode(path),
samples: 256,
}, function(elevations, status) {
也不是
elevator.getElevationForLocations({
locations: L.PolylineUtil.encode(batch)
},
错误信息是:
in property locations: not an Array
它适用于LatLng的数组,但这对我的应用来说效率太低,因为我需要沿着1000坐标路径的高程。
答案 0 :(得分:1)
您可以使用google.maps.geometry.encoding.encodePath(path:Array<LatLng>|MVCArray<LatLng>)
方法获取一系列latLng并将其编码为折线
var polyline = google.maps.geometry.encoding.encodePath(yourLatlangArray);
https://maps.googleapis.com/maps/api/elevation/json?key=" +
Meteor.settings.public.googleMaps + "&locations=enc:" + polyline