我正在尝试为leaflet构建一个叠加层。该叠加层应显示3D内容(例如建筑物)。然而,我在使地图上的移动与叠加场景中的移动同步方面遇到了问题。
目前,画布的大小与地图容器相同,并且始终覆盖地图(类似于position:fixed)。为了在用户平移地图时四处移动,我想在场景中移动相机(而不是移动所有几何体)。对于位置,我使用距离
我迄今为止的尝试如下: https://jsfiddle.net/hg474d6r/7/ (
黑点是中心,供您参考。红点应保持静态-相对于地图-但实际上并没有。
这个公式/“计算”只是有一个小问题,还是这种方法根本行不通?
更新:在fiddle中更新了进展等信息。
目前,画布的大小与地图容器相同,并且始终覆盖地图(类似于position:fixed)。为了在用户平移地图时四处移动,我想在场景中移动相机(而不是移动所有几何体)。对于位置,我使用距离
lat:0,lng:0
的距离,因为THREE似乎无法处理分形位置(例如使用十进制gps坐标时)。不幸的是,我正在努力寻找正确的公式来获取相机(x,y,z)的正确位置。我迄今为止的尝试如下: https://jsfiddle.net/hg474d6r/7/ (
_handleMove
函数是相关的)黑点是中心,供您参考。红点应保持静态-相对于地图-但实际上并没有。
这个公式/“计算”只是有一个小问题,还是这种方法根本行不通?
更新:在fiddle中更新了进展等信息。