Skip to content

ViewportOptions 类

此类作为 map.getViewportmap.setViewport 方法的可选参数,不可实例化。用于配置视野调整的相关参数。

属性

属性类型描述
noAnimationBoolean是否启用动画效果移动地图,默认为 true。当调整后的级别与当前地图级别一致时,将使用动画效果移动地图
marginsArray<Number>视野调整的预留边距,例如:margins: [30, 20, 0, 20] 表示坐标点会限制在上述区域内
zoomFactorNumber地图级别的偏移量,您可以在方法得出的结果上增加一个偏移值。例如 map.setViewport 计算出地图的级别为 10,如果 zoomFactor 为 -1,则最终的地图级别为 9
delayNumber改变地图视野的延迟执行时间,单位毫秒,默认为 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);

相关方法

注意事项

  1. margins 数组的四个值分别对应上、右、下、左四个方向的边距
  2. zoomFactor 可以是正数或负数,用于微调最终的缩放级别
  3. delay 参数仅在 noAnimation 为 false 时生效
  4. 当需要立即调整视野时,可以将 noAnimation 设置为 true

基于 MIT 许可发布