我有纬度和经度坐标到Mapbox地图上的某个位置。该地图设置为缩放级别15,方位为30度。当地图显示在屏幕上时,我需要水平+ 500px垂直移动+ 300px垂直移动。如何确定经纬度中的目的地是什么?
我需要在ruby脚本中进行此计算(以及许多类似的计算)。
尽管我找到了一些信息,描述了如何实现我想要的反向功能,但我很难理解它的工作原理,因此我无法逆转计算结果。
有人可以帮我吗?
答案 0 :(得分:1)
有一个名为project
和unproject
的方法。
project
将LngLat
转换为像素,unproject
将像素转换为LngLat
。
您可以使用类似的内容:
const currentCenterPixel = map.project(map.getCenter());
currentCenterPixel.x += 500;
currentCenterPixel.y += 300;
map.once("idle", () => {
map.panTo(map.unproject(currentCenterPixel));
});