Apêndice A — Apêndices e referências

A.1 Apêndice A - Template de metadata

[general]
name=My QGIS Tool
description=One-line English description.
about=Detailed explanation, dependencies and limitations.
version=0.1.0
qgisMinimumVersion=3.28
qgisMaximumVersion=4.99
author=Author Name
email=author@example.org
homepage=https://github.com/user/repo#readme
repository=https://github.com/user/repo
tracker=https://github.com/user/repo/issues
license=MIT
category=Vector
tags=meaningful,searchable,tags
experimental=True
deprecated=False
hasProcessingProvider=False
supportsQt6=True
icon=icons/icon.svg
changelog=0.1.0 - Initial release.

A.2 Apêndice B - Template de unload()

def unload(self):
    if self.tool is not None and self.canvas.mapTool() is self.tool:
        self.canvas.unsetMapTool(self.tool)

    if self.task is not None:
        self.task.cancel()
        self.task = None

    for reply in list(self.pending_replies):
        try:
            reply.abort()
            reply.deleteLater()
        except RuntimeError:
            pass
    self.pending_replies.clear()

    if self.action is not None:
        self.iface.removePluginVectorMenu(self.MENU, self.action)
        self.iface.removeToolBarIcon(self.action)
        self.action.deleteLater()
        self.action = None

    if self.dock is not None:
        self.iface.removeDockWidget(self.dock)
        self.dock.deleteLater()
        self.dock = None

A.3 Apêndice C - Estrutura de resultado de lote

result = {
    "source_file": str(source_path),
    "layer": layer_name,
    "status": "converted",
    "feature_count": count,
    "output": str(output_path),
    "message": "",
}

A.4 Apêndice D - Glossário

API - interface utilizada por código para interagir com uma aplicação ou serviço.

Canvas - área de mapa do QGIS.

CRS - sistema de referência de coordenadas.

GDAL/OGR - bibliotecas e ferramentas para leitura, transformação e escrita de dados geoespaciais.

GeoPackage - formato SQLite aberto para dados geográficos.

Metadata - dados que descrevem o plugin, incluindo nome, versão e compatibilidade.

Provider - componente QGIS que fornece acesso a uma fonte de dados.

PyQGIS - API Python do QGIS.

Qt - framework de interface utilizado pelo QGIS.

Signal/slot - mecanismo Qt para ligar eventos a funções.

Snapping - ajustamento de uma coordenada a um vértice ou segmento próximo.

Thread principal - thread responsável pela interface gráfica.

A.5 Referências e recursos

  • QGIS Documentation. Developing Python Plugins. https://docs.qgis.org/4.2/en/docs/pyqgis_developer_cookbook/plugins/index.html
  • QGIS Documentation. Structuring Python Plugins. https://docs.qgis.org/4.2/en/docs/pyqgis_developer_cookbook/plugins/plugins.html
  • QGIS Documentation. Releasing your plugin. https://docs.qgis.org/4.2/en/docs/pyqgis_developer_cookbook/plugins/releasing.html
  • QGIS Plugins. Publishing guidelines. https://plugins.qgis.org/docs/publish
  • QGIS API Documentation. https://api.qgis.org/
  • GPX Batch Converter. https://github.com/Jubilio/gpx-batch-converter
  • GeoClick Capture. https://github.com/Jubilio/qgis-latlon
  • GPX Batch Converter no repositório oficial. https://plugins.qgis.org/plugins/gpx_batch_converter/

A.6 Nota de licenciamento

O texto do manual é disponibilizado sob Creative Commons Attribution 4.0 International (CC BY 4.0). Os exemplos de código incluídos no repositório são disponibilizados sob MIT License. As APIs, nomes e marcas QGIS pertencem aos respectivos projectos e titulares.