分享mapbox-gl的three.js插件-threebox
在几年前,GitHub上有一个mapbox-gl的插件threebox,地址是https://github.com/peterqliu/threebox,不过,在4年前已经不进行更新了,使用three.js版本较低,对于2.0版本以后的mapbox-gl也不能很好的支持。
后来,GitHub上有作者基于前一版的threebox基础上,进行了修改,兼容新版的mapbox-gl,地址是:https://github.com/jscastro76/threebox。
threebox是一个基于three.js编写的插件,能够将three.js中实现的物体对象,基于mapbox-gl自定义图层(CustomLayerInterface
)的技术,在mapbox-gl地图上进行显示。
截图效果:

threebox支持实现的功能:
支持加载多种类型的三维模型文件 (FBX, GLTF/GLB, Collada, OBJ/MTL);
支持三维拉高面状和点状数据;
支持three.js中的CSS2D标签和富文本标签;
支持通过鼠标点击或者选中threebox创建的对象;
支持三维对象的动画效果;
支持立体对象的阴影效果;
支持和mapbox-gl中的太阳同步效果;
...
其他的可以参照GitHub中代码例子。