如何设置地图的缩放比例,以便可以完全看到我的路线? (here.com api)
How can I set the zoom of the map so that my routes can be entirely seen? (here.com api)
我正在使用 here.com api 制作应用程序,我需要自动调整地图的缩放比例,以便在加载时显示的路线完全可见?
基本上,我希望所有多段线都在起始帧的边界内。事实上,如果我的路线太长,部分路线会隐藏在框架之外。
您可以在 developer.here.com 的 JavaScript API Explorer
中找到该功能的示例
function addRouteShapeToMap(route){
var strip = new H.geo.Strip(),
routeShape = route.shape,
polyline;
routeShape.forEach(function(point) {
var parts = point.split(',');
strip.pushLatLngAlt(parts[0], parts[1]);
});
polyline = new H.map.Polyline(strip, {
style: {
lineWidth: 4,
strokeColor: 'rgba(0, 128, 255, 0.7)'
}
});
// Add the polyline to the map
map.addObject(polyline);
// And zoom to its bounding rectangle
map.setViewBounds(polyline.getBounds(), true);
}
重要的一点是行 map.setViewBounds()
- 方法,传入 polyline.getBounds()
。如果您有多个 polyline
- 将它们添加到一个 H.map.Group
对象并使用该组的 getBounds() method 代替。
我正在使用 here.com api 制作应用程序,我需要自动调整地图的缩放比例,以便在加载时显示的路线完全可见? 基本上,我希望所有多段线都在起始帧的边界内。事实上,如果我的路线太长,部分路线会隐藏在框架之外。
您可以在 developer.here.com 的 JavaScript API Explorer
中找到该功能的示例function addRouteShapeToMap(route){
var strip = new H.geo.Strip(),
routeShape = route.shape,
polyline;
routeShape.forEach(function(point) {
var parts = point.split(',');
strip.pushLatLngAlt(parts[0], parts[1]);
});
polyline = new H.map.Polyline(strip, {
style: {
lineWidth: 4,
strokeColor: 'rgba(0, 128, 255, 0.7)'
}
});
// Add the polyline to the map
map.addObject(polyline);
// And zoom to its bounding rectangle
map.setViewBounds(polyline.getBounds(), true);
}
重要的一点是行 map.setViewBounds()
- 方法,传入 polyline.getBounds()
。如果您有多个 polyline
- 将它们添加到一个 H.map.Group
对象并使用该组的 getBounds() method 代替。