
Introduce QGIS plugin development with Python, outline prerequisites in Python and the Qt framework, and preview building basic plugins, data input tools, map tools, and a standalone app.
Explore the essential software stack for QGIS Python plugin development, including the plugin builder, first aid debugging, and Cute Designer, Python 3.7.3, Git and GitHub, and OSGeo4W Windows package.
Explore what a QGIS plugin is: an extension that adds functionality beyond the core package, developed in Python (with optional C++) and distributed via repositories.
Learn how to change a QGIS plugin icon by compiling a 24x24 PNG into a Python resource with pyrcc5, updating the plugin directory, and reloading the plugin.
Build the QGIS plugin GUI by editing the user interface in Qt Designer, adding latitude and longitude controls, and implementing Python-based behavior.
Wire signals and slots to sync latitude and longitude widgets, converting degrees, minutes, seconds to decimal degrees, and updating all fields on editing finished.
Learn to set up and build a practical QGIS plugin in Python, focusing on rapid setup and writing code to create buffers and nest features for a data-entry workflow.
Learn how to structure a QGIS plugin's run method in Python, featuring first-start initialization, signal-slot connections, and dialog interaction, while auto-prefilling latitude, longitude, and current date from the map canvas.
Validate the QGIS environment by listing map layers and confirming the raptor nest and buffer layers exist, then prepare to create a feature using dialog values and next nest id.
Learn to add a new point feature and a buffer in a QGIS Python plugin by building the feature from the layer's fields, setting attributes, and assigning geometry.
Learn to use Git and GitHub for version control, commits, branches, and pull requests to back up and collaborate on your QGIS plugin.
Add a results dialog in the QGIS plugin to show affected projects in the buffer after a new nest, enabling immediate notification to the project manager and client.
Populate the results dialog in a QGIS Python plugin by computing distances from linear buffers to a nest, using a bounding box for performance, and sorting the impact table.
Learn to build a QGIS map tool plugin that uses map canvas interactions, the canvas clicked signal, and a rubber band to collect points and create a line or polygon.
Design a QGIS Python plugin GUI to build a pipeline planner tool, creating a dialog with a four-column table for constraints, id, status, and distance, plus a close button.
Learn to build a QGIS plug-in map tool that collects points with a rubber band to form a polyline, displays its geometry, and resets for new drawings.
learn to populate an impact table for a qgis python plugin by computing pipeline distance to raptor buffers, filtering by bounding box intersections, and formatting results for display.
Extend a QGIS Python plugin to model environmental constraints such as bald eagle nest and burning owl habitat, using buffers and the centroid distance to the eagle buffer centroid.
Learn QGIS plugin development with Python by setting up the widget example plugin and using custom widgets in the plugin designer with a dialogue based UI.
Explore Qt data entry widgets for QGIS plugins, including spin boxes with integer and floating input, clear value options, date time edits with null support, and color and font pickers.
Explore qgis plugin development with python using map layer, field, and coordinate reference system widgets that interact with the project and enable filtered geometry operations.
Explore QGIS Python plugin widgets for selecting map layers, fields, and coordinate reference systems, and use proxy models to filter layers and fields.
Develop and customize QGIS plugins with Python by using extents boxes, an expression editor, and a symbology picker, plus related widgets to manage file dialogs, layer extents, and symbol changes.
Explore how to build a QGIS plugin that calculates diversity indexes from polygon and point layers, analyzing high versus low elevation areas.
Set up a basic QGIS Python plugin for biodiversity indices with a diversity calculator, using plugin builder, proper naming, a two-button dialog, and sphinx docs plus a GitHub repo.
Design a UI for the QGIS Python plugin by adding labels and combo boxes, wiring signals and slots, and filtering polygon and point layers to populate category and species fields.
Create a flowchart to transform polygons and points into a nested dictionary by category and species, counting observations for diversity indexes.
Loop through polygon features, extract the category attribute, and log progress to verify flow. Then summarize points by species within each polygon into a nested dictionary using a diversity calculator.
Develop a QGIS Python plugin that loops through polygons and points, builds a species count dictionary for each polygon, then merges dictionaries for grouped categories.
Calculate biodiversity indices from category dictionaries using richness, Shannons index, and Simpson's index, and compute evenness to compare species distributions in a QGIS Python plugin.
Create and display biodiversity results in a QGIS plugin by presenting summary statistics (richness, Shannon's, Simpson's) in a dialog with a tree widget, and allow expanding to view raw data.
Learn how Sphinx supports Python project documentation using reStructuredText, directives, and tables of contents, with GitHub and Read the Docs integration to auto-build and publish plugin docs.
Learn to document a QGIS plugin using Sphinx, integrate images, build HTML and EPUB documentation, and troubleshoot common build issues.
Develop and submit a Python-based QGIS plugin by preparing web-hosted documentation, a GitHub code repository with issue tracking and a license compatible with GPL v2, clean metadata, and a ready-to-upload distribution.
Learn how the QgsProcessingAlgorithm class uses init algorithm to define input parameters with add parameter and create output, covering feature source, field types, and destinations.
Implement the processAlgorithm method to retrieve inputs from parameters, use the context and a feedback object to inform users, and return the results as a dictionary.
Learn to build a QGIS processing plugin with plugin builder 3, creating a diversity calculator algorithm for richness, Shannon's index, and Simpson's index that copies features to an output layer.
Develop and customize a QGIS Python plugin by adding help information and configurable input and output parameters for a diversity processing algorithm.
Learn to generate an html report of diversity metrics from a QGIS Python plugin, outputting a table of richness, evenness, Jannings, and Simpsons.
Add a boolean parameter named detail to a QGIS Python plugin, pass it through the algorithm, and conditionally render a raw data table in the HTML output.
Identify next steps for QGIS plugin developers by using online documentation and python-specific references, plus C++ guides. Leverage Sphinx, Read the Docs, and GitHub resources to deepen your skills.
Uncover how the instructor balances Udemy economics, pricing, and promotions with a focus on creating quality geospatial courses, while guiding learners on how to get the best value.
This course will provide a thorough introduction to QGIS plugin development starting with the most basic plugins to advanced plugins, map tool plugins, processing plugins and more. We will touch on the entire ecosystem of tools used to create plugins including Qt Designer and the QGIS specific Qt Widgets, the Plugin Builder 3 plugin for creating the basic plugin template files, the First Aid plugin for debugging plugins within QGIS, the pb_tool command line tool for building, packaging, and deploying your plugin, the Sphinx system for documentation, Git and Github for verion control, collaboration, and issue tracking, and much more.