【问题标题】:OpenLayers increase or decrease extent by a percentageOpenLayers 按百分比增加或减少范围
【发布时间】:2020-03-03 15:22:21
【问题描述】:

我有一张地图,上面有特征,当我缩放到这些特征时,用户可以设置缩放缓冲区的首选项。

我不确定 OL 中是否有内置的方法……我查看了文档,但什么也没看到……不确定我是否错过了?

zoomToSelectedFeatures() {
view.extent = MapOverlay.getSource().getExtent();
map.getView().fit(view.extent, MapValues.map.getSize());
}

想知道是否有办法将数字插入 20% 以使缩放放大 20%?

【问题讨论】:

    标签: openlayers openlayers-5 angular-openlayers openlayers-6


    【解决方案1】:

    fit 方法有一个padding 选项,但它不以百分比表示,因此您需要根据地图大小计算填充。更简单的方法可能是通过转换为几何来缩放范围,因为fit 可以采用范围或几何

    geom = ol.geom.Polygon.fromExtent(view.extent)
    geom.scale(1.2);
    map.getView().fit(geom, {size: MapValues.map.getSize()});
    

    【讨论】:

    • 感谢 Mike 的回复...“1.2”代表什么?
    • 将几何图形缩放 1.2 倍,即 100% + 20%
    猜你喜欢
    • 1970-01-01
    • 2020-07-25
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    • 1970-01-01
    • 2012-08-02
    • 1970-01-01
    相关资源
    最近更新 更多