地理信息数据处理与展示指南
文章目录
处理地理信息数据时,我们根据展示效果将其分为两大类: 二维数据和 三维数据。其中,二维数据的特点是属性详细、信息量大;三维数据的优势则是视觉直观。下面简单介绍一下,如何分别处理这两类数据,使它们能顺利地在系统前端展示。
一、二维数据
1.1 SHP数据
SHP数据常见点、线、面三种形式,加载方式可以根据数据量的大小进行选择:
- 微量数据:直接用 ArcGIS 或 QGIS 转换为 GeoJson 格式,可在系统中直接展示,同时还能通过代码进行修改,非常方便。
- 中等体量数据:通过 ArcGIS 或 GeoServer 发布,符合 OGC 标准。通常有两种发布方式:
- WMTS 服务:需要切片,适合单纯看数据分布。
- WMS 服务:可查看属性信息,偏向于这种形式。
- 大批量数据:建议采用远近结合的方式——远观用 WMTS,近看用 WMS。
两种发布方式对比:
| 特性 | ArcGIS | GeoServer |
|---|---|---|
| 稳定性 | 稳定,易于管理,有成熟体系 | 不够稳定,大批量数据需借助 PostgreSQL |
| 迁移性 | 迁移不方便 | 易于修改,方便迁移 |
| 更新 | 相对封闭 | 可不断更新,支持多线程处理 |
| 推荐度 | ⭐ 当前主流推荐 | ⭐ 国产化趋势下的未来主流 |
目前推荐以 ArcGIS 为主,但随着国产化进程推进,未来主流可能转向 GeoServer。
1.2 影像数据
影像数据作为重要的底图数据,加载的流畅与否直接关系到系统的使用体验。
- 当前做法:用 ArcGIS 把影像发布为 WMTS 服务。例如陕西的亚米影像大小一般为 1.3TB 左右,发布到 18 级 都是清晰的。
- 痛点:长期更新会导致影像存储占用越来越大。
- 解决方案(图源提供):采用动态加载方式——通过后台管理影像,利用 GeoServer 的接口进行预发布。当系统浏览目标区域影像时才开始切片并缓存,大幅缩短影像切片时间,这可能是未来的主流用法。
二、三维数据
三维数据一般都需要通过类似 CesiumLab 的切片工具处理成 3dtiles 格式后,才能在前端展示。目前这类数据展示需要较好的显卡和较大的内存,电脑配置上多多益善。
2.1 地形数据
地形数据作为系统的基底数据,精度越高,虚拟地理空间的真实度越好。
- 精度选择:受限于存储和处理时间,一般使用 10 米精度,可满足大多数日常需求。
- 处理方式:使用 CesiumLab 的地形切片功能,保持默认选项即可。
- 范围建议:建议选取主要影像的外接矩形大小,视觉效果更舒服。如果完全和影像一样大,会显得像孤岛,且边缘不能很好地表达起伏。
2.2 倾斜模型
倾斜模型是使用最为广泛的三维模型,一般由固定翼无人机等大型无人机采集生成,精度可达厘米级。
- 观感关键:拉花的多少直接影响观感体验,采集过程中要从源头把控细节。
- 切片工具:
- CesiumLab:仅支持 OSGB 格式 的切片处理,生成时注意输出格式。
- 网格大师:也可使用。
- 重要参数:顶点压缩——勾选后会大大提升三维数据的展示效率,改善浏览体验。
2.3 单体模型
单体模型精度比倾斜模型更高,可以理解为经过人工精修的倾斜模型。
- 贴图来源:由实地拍摄的照片进行处理,效果更好。
- 成本:消耗人工成本较高。
- 最佳实践:倾斜 + 单体 结合展示——倾斜展示大范围,单体展示重点区域,效果与效率俱佳。
- 处理方式:与倾斜模型相同,使用切片工具处理即可。
2.4 白模数据
白模的本质是通过三维工具对面状矢量进行拉伸成立体得到的。
- 采集要求:定义楼层层数,才能尽可能还原真实效果。
- 处理方式:使用 CesiumLab 直接将面状矢量数据处理成 3dtiles 格式的白模数据,系统可根据楼层信息渲染不同颜色。
2.5 使用方式
切片好的三维数据,可通过 Nginx 等代理工具进行管理。系统访问时,只需访问 Nginx 给出的地址,即可正确找到数据位置并加载。
三、系统平台
3.1 二维平台
目前主流使用的是 OpenLayers,一个相对成熟的开源二维 GIS 平台,接口完善,能够满足大多数使用场景。
- 其他类似平台:Mapbox、Leaflet 等。
3.2 三维平台
目前使用的是 CesiumJS,但外部公司已逐渐将**虚幻引擎(Unreal Engine)**作为三维平台的主流应用。
CesiumJS vs 虚幻引擎:
| 对比项 | CesiumJS | 虚幻引擎 |
|---|---|---|
| 开发语言 | JavaScript | C++ |
| 渲染方式 | 前端渲染 | 后台渲染 + 前端推流 |
| 硬件利用 | 一般 | 更好地利用显卡配置 |
| 稳定性 | 一般 | 更稳定的渲染方式 |
虚幻引擎结合 CesiumUE 插件 打造仿真地理空间,是一次技术的进步与融合。
总结: 二维数据看属性,三维数据看视觉。选对工具、用对方法,才能让地理信息数据在系统中发挥最大价值。希望这篇文章对你有帮助!🚀
2万+

被折叠的 条评论
为什么被折叠?



