
基于QGIS的二次开发
文章平均质量分 96
基于QGIS进行二次开发的实验报告汇总
安迁岚
梦想成为GIS大师!
展开
-
基于QGIS的二次开发(一):准备工作
因此,为了将逻辑与界面分离,我们需要继承这个代码里的对象,在继承对象中奖进行我们的逻辑代码编写,继承窗体类的代码如下所示,在此代码中我们创建了一个Ui_MainWindow 的子类MainWindow,其主体函数是调用构造函数,同时调用ui.py中的setupUi方法来构造整个界面,该文件命名为Ui_frm_main.py。在实验过程中,我们可以选择使用VS Code或者PyCharm作为我们的开发用IDE,此次实验中我选择使用的是较为熟悉且已安装完成的PyCharm。原创 2024-07-11 10:33:07 · 5068 阅读 · 0 评论 -
基于QGIS的二次开发(二):加载数据与图层操作
通过右键或打开菜单等交互方式,让用户能够选择并加载 QGIS 项目文件(.qgz)、栅格数据(.tif)和矢量数据(.shp),使用户能够在创建的地图界面中浏览和分析不同类型的地理空间数据;实现基本的图层控制功能,如移动图层、删除图层等,以提高用户对地图图层的管理效率,这部分功能可以通过建立简单的右键菜单,并通过调用QgsLayerTreeViewDefaultActions 类的方法来快速实现。原创 2024-07-13 15:33:02 · 3532 阅读 · 3 评论 -
基于QGIS的二次开发(三):图层属性与状态栏设计
Bug:打开地图时若未选择地图会闪退问题描述:在此次实验过程中由于我们需要不断打开运行界面以验证功能是否实现,我发现在运行界面中若我们选择打开地图功能,但没有选择相应的文件路径,运行界面就会闪退退出,需要我们重新运行main文件以打开运行界面。原创 2024-07-15 15:44:58 · 2087 阅读 · 0 评论 -
基于QGIS的二次开发(四):矢量编辑与属性表操作
以上的内容我们已经完成了实验课上的基本内容,为了进一步巩固拓展自己的二次开发能力与知识,结合理论课的项目要求,因为查询功能是最为常见与普遍的功能需要求,我决定在已有代码的基础上实现一系列的属性表操作功能,在上一实验课内容中我们已经实现了打开属性表操作,因此我们接下来的操作都将在。上述的实验内容中,我们只是完成了矢量编辑中最基础的几个功能,但从上述功能的实现过程中我们不难总结得出矢量编辑相关功能实现的总体思路,因此接下来我们将尝试一个较复杂的功能——原创 2025-03-12 16:36:04 · 988 阅读 · 0 评论