安装qgis3_【PyQGIS】构建处理插件(QGIS3)

在上一个教程中,构建Python插件(QGIS3),您学习了如何创建python插件-包括用于处理数据的用户界面和自定义逻辑。尽管这些类型的插件很有用,但将设计用户界面的负担放在了插件作者的身上。这导致每个插件都有不同的交互方式,这会使用户感到困惑。此外,常规插件不会与QGIS的其他部分交互。例如,您不能使用其他算法的插件功能。如果您要编写的插件主要用于分析,并且您想要进行的用户交互仅限于让用户选择输入和输出,那么使用处理框架可以更轻松,更优选地编写插件。它消除了您设计用户界面的需要-简化了过程。内置的处理库根据您的输入创建一个标准的处理接口,该接口的外观和行为与QGIS中的任何其他处理算法一样。它还可以与其余Processing框架无缝集成-因此您的插件算法可以用于批处理,图形建模器,从python控制台调用等。

任务概述

我们将从教程构建Python插件(QGIS3)作为处理插件中重新实现一个简单的 插件。这将导致一个名为的新处理提供程序和一种算法,该算法将允许用户选择矢量层并将其属性写入CSV文件。Save AttributesSave Attributes as CSV

获取工具

文本编辑器或Python 

任何类型的软件开发都需要一个好的文本编辑器。如果您已经拥有喜欢的文本编辑器或IDE(集成开发环境),则可以在本教程中使用它。否则,每个平台都会为文本编辑器提供多种免费或付费选项。选择一个适合您的需求。

本教程在Windows上使用Notepad ++编辑器。

Windows

Notepad ++是一个很好的Windows免费编辑器。下载并安装Notepad ++编辑器。

注意

如果您使用的是Notepad ++,请确保转到设置‣首选项‣标签设置并启用按空格替换。Python对空格非常敏感,此设置将确保制表符和空格得到正确处理。

Plugin Builder插件

有一个有用的QGIS插件,名为,可为该插件创建所有必需的文件和样板代码。查找并安装插件。有关如何安装插件的更多详细信息,请参见使用插件。Plugin BuilderPlugin Builder

Plugin Reloader插件

这是另一个允许插件迭代开发的帮助程序插件。使用此插件,您可以更改插件代码并将其反映在QGIS中,而不必每次都重新启动QGIS。查找并安装插件。有关如何安装插件的更多详细信息,请参见使用插件。Plugin Reloader

注意

插件重新加载器是一个实验性插件。如果找不到,请确保在“插件管理器”设置中选中了“同时显示实验性插件”。

程序

  1. 打开QGIS。转到插件‣插件构建器‣插件构建器。

    6061f430e002be992eb395b9bfa602a2.png

  2. 您将看到带有表单的QGIS Plugin Builder对话框。您可以在表单中填写与我们的插件有关的详细信息。的类名称将是Python类的含插件的逻辑名称。这也是包含所有插件文件的文件夹的名称。输入SaveAttributes作为类名。该插件名称是根据该插件将出现在名称 插件管理器。输入名称为。在描述字段中添加描述。该模块名称将是插件的主要蟒蛇文件的名称。输入为Save Attributes (Processing)save_attributes_processing。保留版本号不变,并在相应的字段中输入您的姓名和电子邮件地址。单击下一步。

    0e6b469bf2f6a859a63cb7a66e3e7336.png

  3. 在About对话框中输入插件的简短描述,然后单击Next。

    21ed1e2bf90448012a0e4059a0a14eab.png

  4. 选择从模板选择。该算法的名称值将是用户如何找到在处理TOOLOX的处理算法。输入为。将“算法”组留为空白。输入提供者名称为。在提供者描述字段中输入描述。单击下一步。Processing ProviderSave Attributes as CSVSave Attributes

    14c459580cdbacf32e1165a562683f69.png

  5. 插件构建器将提示您输入要生成的文件类型。保留默认选择,然后单击下一步。

    f8821cb7c5270418bcd17fa554a6a237.png

  6. 由于我们不打算发布该插件,因此您可以将Bug tracker,Repository和Home页面值保留为默认值。选中底部的将插件标记为实验框,然后点击下一步。

    8f430ec9b491e7550934a6f00f3a4378.png

  7. 系统将提示您选择插件的目录。现在,将其保存到您可以轻松在计算机上找到的目录中,然后点击生成。

    8d9f7303e8b60ea7ebfc05b523beb873.png

  8. 接下来,按生成按钮。创建插件模板后,您将看到一个确认对话框。

    97efbe23087dc24bf7d1129debc1befe.png

    注意

    您可能会提示您在路径中找不到pyrcc5。您可以忽略此消息。

  9. QGIS中的插件存储在一个特殊的文件夹中。我们必须先将插件目录复制到该文件夹,然后才能使用它。在QGIS中,转到设置‣用户配置文件‣打开活动配置文件文件夹,找到当前的配置文件文件夹。

    1d2aa2f771695322fbd4670089d1302e.png

  10. 在配置文件文件夹中,将plugin文件夹复制到python‣plugins子文件夹。

    4f383c1b11c97b9f13d7888764a4693d.png

  11. 现在,我们准备开始看看我们创建的全新插件。关闭QGIS,然后再次启动。转到插件‣管理和安装插件,然后在已安装标签中启用插件。Save Attributes (Processing)

    e96a909c620c6b08e9128a40e7e2d125.png

  12. 转到处理‣工具箱。您会注意到,底部有一个新的提供程序。展开以找到名为的算法。双击以启动它。Save AttributesSave Attributes as CSV

    c2874c39236a67a0c65bc0726bb1d08a.png

  13. 您会注意到一个熟悉的处理算法对话框,其中输入层有一个下拉菜单,输出层有一个选择器。现在,我们将自定义此对话框以适合我们的需求。关闭此对话框。

    e2369135ab31bbea14ca5a49571a98dc.png

  14. 转到插件目录,然后save_attributes_processing_algorithm.py在文本编辑器中加载文件。对于我们的插件,我们将矢量层作为输入并写出CSV文件作为输出。因此,QgsProcessingParameterFeatureSink与其为输出导入(用于矢量层),不添加QgsProce

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值