Qt Location
Qt Location 模块帮助您利用来自流行的地理位置服务提供商(如Open Street Map)的数据创建地图解决方案。
Qt Location API 允许您:
- 访问和展示地图数据。
- 在地图的特定区域支持触摸手势。
- 查询特定地理位置和路线。
- 添加额外的层,例如折线和多边形。
- 搜索地点和相关图片。
使用模块
QML API
为了使用这些类型,请将以下导入语句添加到您的 .qml
文件中
import QtPositioning import QtLocation
注意:许多 Qt Location QML 模块 API 正在使用来自 Qt 位置模块的类型。例如,将坐标定义为地图中心需要 Qt 位置模块的类型。
C++ API
对于 C++ 项目,包括适用于当前用例的相应头文件;例如,使用路线的应用程序可能使用
#include <QGeoRoute>
使用 Qt 模块的 C++ API 需要直接或通过其他依赖项链接到模块库。几个构建工具有专门的对此的支持,包括CMake 和qmake。
使用 CMake 构建
使用 find_package()
命令来定位 Qt6
包中所需的模块组件
find_package(Qt6 REQUIRED COMPONENTS Location)
target_link_libraries(mytarget PRIVATE Qt6::Location)
有关更多详细信息,请参阅使用 CMake 构建概述。
使用 qmake 构建
为了使用 qmake 构建,将模块添加为项目 .pro 文件中 QT
变量的值
QT += location
子模块
API 被拆分成了子模块,为特定目的提供 QML 和 C++ 接口。它们主要关注地图和地点信息。所需的位置数据可以使用QtPositioning 模块检索。
地点
地点子模块是定位的自然补充,提供有关兴趣地点(POI)的地理数据的来源。除了来源信息,API 还提供有关 POI 的位置、大小以及其他相关信息。地点 API 还可以检索与地点相关的图片、评论和其他内容。
地图和导航
本模块提供了地图和导航的 QML 和 C++ 替代方案。C++ 替代方案提供实用类,以获取地理编码(从街道地址中查找地理坐标)和导航(包括驾驶和步行路线)信息,而其 QML 相当部分提供 UI 组件以渲染这些信息。
示例
API 参考
以下列出了模块提供的类和 UI 组件,以及示例应用来展示其用法
QML API 参考 | Qt 位置 API 中的完整 QML 组件列表 |
按领域分组的 C++ API 参考 | 按领域排序的 Qt 位置 API 的完整 C++ 类和方法列表 |
C++ API 参考 | Qt 位置 API 的完整 C++ 类和方法列表 |
插件引用和参数
有关插件的信息,其使用的重要注意事项,可以向其提供的参数,以影响其行为。
提供了一个空的地图,旨在用作地图项目重叠层背景。 | |
使用开放街图和相关服务。 |
实现新的后端和移植
对于系统集成商和分销商,有关使 Qt 位置适用于新平台的相关信息。
GeoServices | 有关 Qt 位置 GeoServices 插件的信息 |
地点 | 为地点后端实现者提供信息 |
API 变更 | 有关从 Qt 5 移植到 Qt 6 的信息 |
许可
Qt 位置可在来自 Qt 公司 的商业许可下使用。此外,它根据 GNU 少量通用公共许可证,版本 3 或 GNU 通用公共许可证,版本 2 提供。有关更多详情,请参阅 Qt 许可。
© 2024 Qt 公司有限公司。本文件中包含的文档贡献者的版权。本文件提供的文档根据 Free Software Foundation 发布的 GNU 自由文档许可证版本 1.3 的条款提供许可。Qt 及其相应标志是芬兰的 Qt 公司和/或在其他全球国家的商标。所有其他商标均为其各自所有者的财产。