我目前正在开发一个 Qt Quick 应用程序,该应用程序将为一个小区域(1 平方公里左右)提供地图查看器,其地图详细信息将在单个地理参考图像文件(GeoTIFF,地理参考PDF、ESRI 形状文件等),以及显示当前位置、操作员识别的兴趣点等。它的主要职责是显示自定义地图(与从公共地图图像服务提供商(OSM、MabBox、 ESRI 等)),它通常用于连接受限的区域
广泛的网络搜索已经确定了过去曾进行过类似查询的其他人(此处为 Qt 论坛等),解决方案的一般建议如下:
- 带有 Qt SDK 的 ArcGIS Runtime对我不起作用,因为我打算使用 ARM 处理器以嵌入式 linux 设备为目标,并且 ArcGIS 不会为任意目标提供可用于交叉编译的源代码。他们最近发布了一个 Android 版本,但一般来说没有针对 ARM linux 的版本)
- QGIS 开发人员库GPL 许可证与我的商业开发不兼容
- 将 Qt 位置图组件与本地图块服务器或离线图块集合一起使用(一些插件最近引入了对此的支持)似乎有点 hack,如前所述,我主要使用自定义地图,而不是公共地图的离线副本服务器图像,而我的图像将不足以真正保证平铺
从头开始开发 Qt Quick 组件来做到这一点是可行的,但鉴于现有的 Qt Location Map组件为我的地图需要做的所有事情提供了一个定义良好的预先存在的前端接口,并且具有一个可扩展的基于插件的架构,编写一个自定义的 Qt Location GeoServices 插件似乎是最明智和优雅的前进方式。
我已经开始检查现有插件的源代码,但无法摆脱这样一种感觉:在一个拥有 80 亿人口的世界里,“太阳底下没有新鲜事”,如果这是一个好主意,这已经完成了……
有更熟悉 Qt Location 模块的人愿意发表评论吗?