Appearance
相机同步
该库基于 maplibre-gl 的customLayer 特效,可以获取 webgl 上下文,通过同步 maplibre-gl 和 three.js 的相机,使得 three.js 炫酷效果与 maplibre-gl 完美融合。
相机同步逻辑的核心借鉴了 threebox 中实现的 mapboxgl 与 three.js 的同步原理。
坐标转换
其中,将地理坐标的物体加载到 three.js 的三维场景中,其核心是需要进行坐标的转换,在该库中,通过初始化 JoGISThree 实例时,传入对应渲染引擎的坐标系,在 Layer 的 setData 方法进行坐标的转换,将地理坐标转换到 three.js 的坐标。
其中 three.js 的三维场景中,我们通过抽象将整个三维场景的大小设置为 1024000 大小,从而来进行坐标的转换。

