地图引擎思路
- Map核心入口,class类
- mapType 地图类型 0-READONLY 1-FREE 2-DRAW
- layers 地图图层(数组中包含若干个实例化之后的图层)
- ol2d 地图2D
- 实例化Ol中的Map,来挂在layers、controls、target、view等配置
- 此类中主要处理地图相关的原生操作
- ol3d 地图3D
- 实例化OlCesium(本质是cesium),挂载ol2d中的map2d来实现2d、3d地图同步
- 3d地图中存在camera、entities、ellipsoid、scene等可操作的类
- uav 无人机
- uav2d 通过向map2d中添加Overlay,来实现自定义2d无人机(本质是添加dom)
- uav3d 通过向ol3d中的Entities添加entity来实现自定义3d无人机(本质是添加entity)
- 正常的增删改查
- draw 绘制
- mode 绘制类型 1-Point 2-Line 3-Polygon
- 2d点添加 通过向map2d中添加Feature,来实现自定义点(本质是canvas,设置style等一系列实例属性)
- 3d点添加 通过向ol3d中的Entities添加entity来实现自定义3d无人机(本质是添加entity)
- 点删除 通过特定属性ID来删除
- 点拖动 通过在map2d中添加实例化Translate之后的Interaction,来实时更新点的位置
- 2/3d同步 同时更新指定的Feature、entity相关属性,比如:position