【计划】QGIS学习计划及进度

本文描述了一名技术人员在面临现有数据管理系统不足时,决定自行开发,计划使用Qt作为界面框架,QGIS处理GIS功能,同时学习如何集成PostgreSQL空间数据库和优化数据库访问。文章详细记录了环境搭建和学习目标,以及初期遇到的问题和解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于推延症晚期患者,还是写个计划吧,即使起不到激励自己,也能方便将来恢复现场。
根据学习进度随时更新。

学习背景

单位采购了套数据管理系统,比较专业的数据,需要地图显示和操作,支持地理信息数据,不够通用(但貌似现在都在搞啊)。C/S + B/S架构吧,以C/S为主。C/S端的S只运行了一个PostgreSQL服务,C端是管理的,C++开发,GIS部分目测是基于ArcGIS的。
功能是挺多的,但由于使用范围小,没办法进行大范围测试,BUG也不少。而且软件也不是专门针对我们需求开发的,而是在一个以前成型产品上改的,所以流程、内容上有很多不是特别适配,学习成本比较高,操作也比较繁琐,性能不够,功能也不完善。貌似是这类软件通病啊。
我们需要的功能不复杂,于是就想自己动手写一下,能够针对需要的功能优化流程,设计数据库,而且代码在自己手上,修改也容易。
其实在这之前也尝试写过,只不过是用的B/S,PHP(ThinkPHP) + MySQL,但是不支持空间数据库,数据范围是直接写死的geojson,数据也只保存了路径,算是一个比较粗粒度的管理吧,而且数据和空间没有关联,自动管理程度低,目前已基本停用。不过总算是踩过一些坑,积累了一些经验吧。

学习目标

界面使用 Qt,需要基本了解Qt里GUI框架,各类的关系,深入了解“信号-槽”机制,以及处理XML的类。如果Qt更方便的话,还要学习Qt网络库及访问数据库的细节。如果可以的话,我更喜欢Ribbon菜单工具栏风格。
GIS框架使用QGIS,基于C++语言,但有时间的话也多接触下Python版本,甚至考虑添加命令交互功能。
空间数据库使用PostgreSQL,主要学习连接数据库,以及空间数据处理方法及检索优化。牢记:访问数据库的功能一定要独立出来,逻辑部分不直接访问数据库。

学习进度

环境搭建

2023/10/15 其实早已经完成了,主要参考的是一篇来自CSDN的博文。
不知道在CSDN上可不可以@别人,先用下面的方式吧。
链接QGIS二次开发环境配置(Visual Studio 2015 + Qt 3.12 + QGIS 3.16)
作者浅眠&
注意:文章最后提到的问题我遇到了,但当时没看到这段内容,从别的地方百度了很久也没解决,最后又回来看了一遍,才发现作者已经给出解决方法了。哭死……

QGIS学习

Qt学习

QApplication和QWidget的关系(先放在这里,将来单独移出)

为什么会有这个问题,主要是在看Qt代码的main函数里面,既有QApplication,又有QWidget实例,两个实例又互相没有直接的关联,但又必须同时有,觉得十分疑惑,觉得两者后面一定有见不得人的勾当,百度一下,果然如此。当然还是百度到万能的CSDN里了。
链接Qt:QApplication类
作者OceanStar的学习笔记
总结QApplication使用单例模式,而在QWidget中引用了其实例,因此QApplication必须在QWidget前实例化。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值