Openlayers - 添加控制:缩放/平移到当前位置
Posted
技术标签:
【中文标题】Openlayers - 添加控制:缩放/平移到当前位置【英文标题】:Openlayers - Add control: zoom/pan to current location 【发布时间】:2021-05-01 12:47:48 【问题描述】:我正在尝试向地图添加一个 ol.control 按钮,以缩放/平移到我当前的位置。我已经提取了我的位置坐标:
var geolocation = new ol.Geolocation(
projection: map.getView().getProjection(),
tracking: true
);
geolocation.getPosition(); //this shows the coordinates (e.g.[591374.2306195896, 6746799.171545821])
现在我想将这些用作“缩放至”ol.control 按钮的输入。就像使用 ol.control.ZoomToExtent 一样,它会创建一个控制按钮。例如:
map.addControl(zoomToExtentControl);
zoomToExtentControl = new ol.control.ZoomToExtent(
extent: [-1013450.0281739295, 3594671.9021477713, 6578887.117336057, 10110775.689402476],
className: 'custom-zoom-extent',
label: '????'
);
请帮帮我:-)
【问题讨论】:
你在文档中看到过这个例子吗:openlayers.org/en/latest/examples/animation.html 【参考方案1】:用于 ZoomToExtent 的范围数组可以根据地理位置的精度范围动态更新
var geolocation = new ol.Geolocation(
projection: map.getView().getProjection(),
tracking: true
);
var extent = ol.extent.createEmpty();
geolocation.on('change:accuracyGeometry', function()
geolocation.getAccuracyGeometry().getExtent(extent);
);
zoomToExtentControl = new ol.control.ZoomToExtent(
extent: extent,
className: 'custom-zoom-extent',
label: '?'
);
【讨论】:
以上是关于Openlayers - 添加控制:缩放/平移到当前位置的主要内容,如果未能解决你的问题,请参考以下文章