2021-07-01 Qt Location开发系列教程 (一)


前言

从此文章开始将进行一系列的QtLocation 开发的教程,由于在国内几乎很难找到用Qtlocation做地图应用开发文章,而且本身这段时间也在做这块的内容,就想记录一下过程,另一个也是希望能对其它想使用Qt原生地图做应用的同学有所帮助
本教程默认大家会C++/qt/qml的基本使用,还有了解gis开发的基础
个人目前能力有限,如有错误或不足的,希望大家留言提醒,以便更正

一、为什么要使用QtLocation

目前市面上能在c++平台做地图开发的应用有很多,如鼎鼎大名的ArcGis, osgearth,qgis.或者是基于浏览器做在线地图开发,这种国内地图都可以,还有cesium等等
我选择Qtlocation的原因是项目本身是基于Qt做的,能用Qt所有的功能,就不打算增加其它库,特别是UI这块,常常因为其它库的渲染与Qt自身渲染不同,导致不能进行控件叠加等问题,…另一个是Qtlocation所占资源小,在性能比较低的机器上可以完美运行.
如果不使用3D地图,只使用平面地图,只是需要在地图进行一些图标的绘制,地理信息的获取等,且工程是使用的quick界面,那使用qtlocation是绝佳的选择

二、参考资料

遇到问题最有效的方法是看已有项目的源码和官方文档,官方案例,各搜索工具只能是辅助

二、使用方法

1.显示一个地图

新建一个quick应用
其中pro文件中需包含以下内容

QT += quick positioning location

main.qml

import QtQuick 2.0
import QtQuick.Window 2.14
import QtLocation 5.6
import QtPositioning 5.6

Window {
    visible: true
    width: 800
    height: 600

    Plugin {
        id: mapPlugin
        name: "esri" // "mapboxgl", "esri", ...
    }

    Map {
        anchors.fill: parent
        plugin: mapPlugin
        center: QtPositioning.coordinate(59.91, 10.75) // Oslo
        zoomLevel: 14
    }
}

运行后即可以简单的显示地图:
在这里插入图片描述

2.Qt location 自带插件介绍

在这里插入图片描述
其中esri支持卫星图
Qt 官方有个案例:Map Viewer(QML)可以查看各个插件,直接在Qt Creator 里搜索,运行即可,可以选择显示各个插件,同时各个插件也可以选择他们的图源
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

结束

本文章先对Qt 地图有一个大概的了解,后续将详细介绍地图操作及绘图,后续还会讲到如何做一个对天地图的支持,其中包含如何显示卫星图与信息标注的叠加

  • 13
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值