ViewportOptions 类
此类作为 map.getViewport 与 map.setViewport 方法的可选参数,不可实例化。用于配置视野调整的相关参数。
属性
| 属性 | 类型 | 描述 |
|---|---|---|
| noAnimation | Boolean | 是否启用动画效果移动地图,默认为 true。当调整后的级别与当前地图级别一致时,将使用动画效果移动地图 |
| margins | Array<Number> | 视野调整的预留边距,例如:margins: [30, 20, 0, 20] 表示坐标点会限制在上述区域内 |
| zoomFactor | Number | 地图级别的偏移量,您可以在方法得出的结果上增加一个偏移值。例如 map.setViewport 计算出地图的级别为 10,如果 zoomFactor 为 -1,则最终的地图级别为 9 |
| delay | Number | 改变地图视野的延迟执行时间,单位毫秒,默认为 200ms。此延时仅针对动画效果有效 |
示例
javascript
// 创建视野调整的配置对象
var viewportOpts = {
noAnimation: false, // 启用动画效果
margins: [30, 20, 0, 20], // 设置视野边距
zoomFactor: -1, // 级别偏移量
delay: 300 // 动画延迟时间
};
// 使用配置调整地图视野
var points = [
new BMapGL.Point(116.404, 39.915),
new BMapGL.Point(116.424, 39.935)
];
map.setViewport(points, viewportOpts);相关方法
- Map.setViewport() - 调整地图视野
- Map.getViewport() - 获取合适的视野范围
注意事项
margins数组的四个值分别对应上、右、下、左四个方向的边距zoomFactor可以是正数或负数,用于微调最终的缩放级别delay参数仅在noAnimation为 false 时生效- 当需要立即调整视野时,可以将
noAnimation设置为 true
