---
title: 'Plugins e pyqgis'
url: 'https://www.faunalia.eu/it/training/pyqgis'
markdown: 'https://www.faunalia.eu/it/training/pyqgis.md'
lang: it
date: '2025-04-11'
description: 'Formazione di plugins e pyqgis'
taxonomy:
  archives_month:
    - apr_2025
  archives_year:
    - '2025'
---

# Plugins e pyqgis

Per capire come potenziare QGIS con il linguaggio di programmazione Python. La finalità principale è quella di fornire gli strumenti e i concetti base per sviluppare script in Python e creare plugins. Dopo una breve introduzione a Python, i partecipanti saranno guidati passo a passo nella creazione di script e di un plugin.

È preferibile, ma non obbligatoria, una conoscenza di base di Python. È necessaria una conoscenza di base dei principi di programmazione.

## Argomenti principali

- Introduzione alla programmazione python in QGIS

    - la sintassi Python (variabili, cicli, funzioni e classi)
    - importazione moduli esterni
- Le principali classi API QGIS e le loro relazioni

    - classi di base e impostazioni: classi Qgis, QgsProject
    - area mappa, layer e legenda: QgsMapCanvas, QgsMapLayer, QgsProject, QgsLayerTree
    - layer vettoriali: QgsVectorLayer, QgsField, QgsFeature, QgsGeometry
    - classi dei sistemi di riferimento: QgsCoordinateReferenceSystem, QgsCoordinateTransform
    - ottimizzazione iterazioni e indici spaziali: QgsFeatureRequest, QgsSpatialIndex
    - layer raster: QgsRasterLayer
    - elementi della mappa: QgsMapCanvas
- Utiizzo di pyqgis "fuori dagli schemi"

    - macro di progetto
    - funzioni personalizzate nel calcolatore di campo
    - aggiungere azioni a un layer in python
    - python e moduli di inserimento dati personalizzati
- Processing e pyqgis

    - lanciare un algoritmo di Processing da console
    - scrittura di script di Processing
- Creazione di un plugin standalone

    - uso delle classi e dei metodi principali per la creazione in un plugin
    - Plugin Builder e Plugin Reloader
    - trasformazione di script di Processing in un plugin
    - creare interfacce utente con QtDesigner (.ui)
    - gestione dei metadati per la pubblicazione del plugin
    - corretti metodi di gestione di un plugin
- Utilizzo di software di controllo versione (git)

    - introduzione a git
    - vantaggi di un sistema di versionamento
    - comandi principali di git (git add, git commit, git pull, git push)
    - utilizzare i branch per lo sviluppo e il bug fixing
    - releases e tag
    - pubblicazione del plugin su un hosting remoto (github, gitlab)
    - corretta gestione di un issue/bug tracker

## Durata

5 mezze giornate da 4 ore

---

## Navigation

- Parent: [Corsi](https://www.faunalia.eu/it/training.md)
- Previous: [WebMapping con QGIS](https://www.faunalia.eu/it/training/webgis.md)
- Next: [QGIS in campo: Mergin Maps](https://www.faunalia.eu/it/training/merginmaps.md)
