16.1. La finestra di dialogo Proprietà dei vettori

La finestra di dialogo Proprietà Layer per un layer vettoriale fornisce le impostazioni generali per gestire l’aspetto degli oggetti del layer nella mappa (simbologia, etichettatura, diagrammi), l’interazione con il mouse (azioni, suggerimenti mappa, impostazioni modulo). Fornisce anche informazioni sul layer.

Per accedere alla finestra di dialogo Proprietà Layer:

  • Nel pannello Layer, fai doppio clic sul layer o fai clic con il tasto destro del mouse e seleziona Proprietà…. dal menu pop-up;

  • Vai al menu Layer ► Proprietà… quando il layer è selezionato.

La finestra di dialogo sul vettore Proprietà Layer ha le seguenti sezioni:

metadata Information

system Source

symbology Symbology[1]

labelingSingle Labels[1]

labelmask Mask[1]

3d 3D View[1]

diagram Diagrams

sourceFields Fields

formView Attributes Form

join Joins

auxiliaryStorage Auxiliary Storage

action Actions

display Display

rendering Rendering

temporal Temporal

expression Variables

elevationscale Elevation

editMetadata Metadata

dependencies Dependencies

legend Legend

overlay QGIS Server

digitizing Digitizing

External plugins[2] schede

[1] Disponibile anche nel Layer styling panel

[2] External plugins che tu installi possono opzionalmente aggiungere schede a questa finestra di dialogo. Queste non sono illustrate in questo documento. Fai riferimento alla loro documentazione.

Suggerimento

Condividere completamente o in parte le proprietà degli stili dei layer

Il menu Stile nella parte inferiore della finestra di dialogo consente di importare o esportare queste proprietà o parte di esse da/per diverse destinazioni (file, appunti, database). Vedi Gestione stili personalizzati.

Nota

Poiché le proprietà (simbologia, etichetta, azioni, valori predefiniti, moduli …) di layer incorporati (vedi Incorporare layer da progetti esterni) sono ricavate dal file di progetto originale per evitare modifiche che potrebbero alterare questo comportamento, la finestra di dialogo delle proprietà dei layer non è disponibile per questi layer.

16.1.1. Proprietà Informazioni

La scheda metadata Informazioni è di sola lettura e rappresenta un posto interessante per avere rapidamente informazioni e metadati di sintesi sul layer corrente. Le informazioni fornite sono:

  • informazioni generali come il nome nel progetto, il percorso sorgente, l’elenco dei file ausiliari, il tempo dell’ultimo salvataggio e la dimensione, il provider utilizzato

  • in relazione al fornitore del layer: formato di memorizzazione, tipo di geometria, codifica dell’origine dei dati, estensione, numero di elementi…

  • il sistema di riferimento delle coordinate: nome, unità, metodo, precisione, riferimento ( per esempio se è statico o dinamico)

  • ricavato dai filled metadata: accesso, estensioni, collegamenti, contatti, storia…

  • e relativi alla sua geometria (estensione spaziale, SR…) o ai suoi attributi (numero di campi, caratteristiche di ciascuno…).

16.1.2. Proprietà Sorgente

system Usa questa scheda per gestire le impostazioni generali di un layer vettoriale.

../../../_images/vector_source_menu.png

Fig. 16.1 Finestra di dialogo scheda Generale Proprietà Layer

16.1.2.1. Impostazioni

  • Impostare un Nome layer diverso dal nome del file del layer che sarà usato per identificare il layer nel progetto (nel pannello Layer, con espressioni, nella legenda del layout di stampa, …)

  • A seconda del formato dei dati, selezionare la Codifica sorgente dati se non viene rilevata correttamente da QGIS.

16.1.2.2. Sistema di Riferimento delle coordinate e Geometria

  • Visualizza il Assigned Coordinate Reference System (CRS) del layer. Puoi cambiare il SR del layer, selezionandone uno usato di recente nell’elenco a discesa o cliccando sul pulsante setProjection Seleziona SR (vedi Scelta del sistema di riferimento delle coordinate). Usa questo processo solo se il SR applicato al layer è un SR sbagliato o se non ne è stato applicato nessuno. Se vuoi riproiettare i tuoi dati in un altro SR, usa piuttosto gli algoritmi di riproiezione dei layer di Processing o Save it into another layer.

  • Crea indice spaziale (solo per formati supportati da OGR).

  • Aggiorna estensione del vettore.

16.1.2.3. Costruttore di interrogazioni

La finestra di dialogo Costruttore di interrogazioni è accessibile attraverso il pulsante eponimo in fondo alla scheda Sorgente nella finestra di dialogo Proprietà vettore, sotto il gruppo Filtro delle geometrie della sorgente dati.

Il Costruttore di interrogazioni fornisce un’interfaccia che permette di definire un sottoinsieme delle geometrie del layer utilizzando una clausola SQL-like WHERE e di visualizzare il risultato nella finestra principale. Finché la query è attiva, nel progetto sono disponibili solo le geometrie corrispondenti al suo risultato.

Puoi usare uno o più attributi del layer per definire il filtro nel Costruttore di interrogazioni. L’uso di più di un attributo è mostrato in Fig. 16.2. Nell’esempio, il filtro combina gli attributi

  • toa (DateTime field: cast("toa" as character) > '2017-05-17' and cast("toa" as character) < '2019-12-24T18:00:00'),

  • name (String field: "name" > 'S') and

  • FID (Integer field: FID > 10)

utilizzando gli operatori AND, OR e NOT e le parentesi. Questa sintassi (incluso il formato DateTime per il campo toa) funziona per i set di dati GeoPackage.

Il filtro viene effettuato a livello di provider dei dati (OGR, PostgreSQL, MS SQL Server…). Pertanto, la sintassi dipende dal fornitore di dati (DateTime, ad esempio, non è supportato per il formato ESRI Shapefile). L’espressione completa:

cast("toa" as character) > '2017-05-17' AND
cast("toa" as character) < '2019-12-24T18:00:00' AND
NOT ("name" > 'S' OR FID > 10)

Puoi anche aprire la finestra di dialogo Costruttore di interrogazioni utilizzando l’opzione Filtro… dal menu Layer o dal menu contestuale del layer. Le sezioni Campi, Valori e Operatori nella finestra di dialogo ti aiutano a costruire la query di tipo SQL visualizzata nella casella Espressione di Filtro Specifica del Provider.

../../../_images/queryBuilder.png

Fig. 16.2 Costruttore di interrogazioni

L’elenco Campi contiene tutti i campi del layer. Per aggiungere una colonna attributo al campo della condizione SQL WHERE, fai doppio click sul suo nome o semplicemente digitalo nel box SQL.

Il riquadro Valori elenca i valori del campo attualmente selezionato. Per elencare tutti i valori unici di un campo, fai clic sul pulsante Tutto. Per elencare invece i primi 25 valori univoci della colonna, fai clic sul pulsante Campione. Per aggiungere un valore al campo della clausola SQL WHERE, fai doppio clic sul suo nome nella lista Valori. Puoi utilizzare la casella di ricerca nella parte superiore del riquadro Valori per sfogliare e trovare facilmente i valori degli attributi nella lista.

La sezione Operatori elenca tutti gli operatori che puoi usare. Per aggiungere un operatore nella casella delle clausole SQL WHERE, clicca sul pulsante appropriato. Sono disponibili operatori relazionali (=, >, …), operatori per confrontare stringhe di testo (LIKE) ed operatori logici (AND, OR, …).

Il pulsante Test ti aiuta a controllare la tua richiesta e visualizza una casella messaggio con il numero di geometrie che soddisfano la richiesta corrente. Utilizza il pulsante Pulisci per cancellare la query SQL e ripristinare il layer al suo stato originale (cioè, caricare completamente tutte le geometrie).

Quando viene applicato un filtro, QGIS tratta il sottoinsieme risultante agisce come se fosse l’intero layer. Per esempio, se applichi il filtro di cui sopra per “Borough” ("TYPE_2" = 'Borough'), non puoi visualizzare, interrogare, salvare o modificare Anchorage, perché questo è una “Municipality” e quindi non fa parte del sottoinsieme.

Suggerimento

I Layer filtrati sono evidenziati nel Pannello Layer

Nel pannello Layer, il layer filtrato è elencato con una icona indicatorFilter Filtro accanto ad esso che indica la query utilizzata quando il mouse passa sopra il pulsante. Facendo doppio clic sull’icona si apre la finestra di dialogo Costruttore di interrogazioni per la modifica.

16.1.3. Proprietà Simbologia

symbology La Scheda Simbologia ti fornisce uno strumento completo per la visualizzazione e la simbologia dei dati vettoriali. Puoi utilizzare gli strumenti che sono comuni a tutti i dati vettoriali, così come gli strumenti simbolo speciale che sono stati progettati per i diversi tipi di dati vettoriali. Tuttavia tutti i tipi condividono la seguente struttura della finestra di dialogo: nella parte superiore, disponi di un widget che ti consente di impostare il tipo simbolo e la classificazione per le geometrie e nella parte inferiore il widget Visualizzazione del layer.

Suggerimento

Passa rapidamente tra le diverse rappresentazioni del layer.

Utilizzando il menu Stile ► Aggiungi… in fondo alla finestra di dialogo Proprietà Layer, puoi salvare tutti gli stili di cui hai bisogno. Uno stile è la combinazione di tutte le proprietà che desideri per un layer (come la simbologia, l’etichettatura, il diagramma, la forma dei campi, le azioni….). Quindi, basta passare da uno stile all’altro dal menu contestuale del layer nel pannello Layer per ottenere automaticamente rappresentazioni diverse dei tuoi dati.

Suggerimento

Esporta simbologia vettore

Hai la possibilità di esportare la simbologia del vettore da QGIS nei file Google *.kml, *.dxf e MapInfo *.tab. Semplicemente, clicca con il tasto destro sul vettore per aprire il menu contestuale e clicca su Salva con nome… per specificare il nome del file in uscita e il suo formato. Nella finestra di dialogo, usa il menu Esporta simbologia per salvare la simbologia o come Simbologia elementi ► o come Simbologia simboli del vettore ►. Se hai utilizzato dei simboli, si consiglia di utilizzare la seconda impostazione.

16.1.3.1. Modalità di rappresentazione delle geometrie

Il visualizzatore è responsabile del disegno di un elemento con il simbolo corretto. Indipendentemente dal tipo di geometria del layer, esistono quattro tipi comuni di rappresentazioni: simbolo singolo, categorizzato, graduato e basato su regole. Per i layer di punti, sono disponibili i visualizzatori di spostamento di punti, cluster di punti e mappa di concentrazione, mentre i layer poligonali possono essere visualizzati con i visualizzatori elementi fusi, poligoni invertiti e 2,5 D.

Il visualizzatore a colorazione continua non c’è perché è a tutti gli effetti un caso speciale del visualizzatore graduato. I visualizzatori categorizzato e graduato possono essere modificati con simboli specifici e con scale di colore personalizzate - i colori per i simboli saranno realizzati in modo appropriato. Per ogni tipo di vettori (punti, linee e poligoni), sono disponibili tipi di simboli. A seconda del visualizzatore selezionato, la finestra di dialogo offre diverse sezioni aggiuntive.

Nota

Se cambi il tipo di visualizzatore mentre imposti lo stile di un vettore, le impostazioni effettuate per il simbolo saranno mantenute. Questo funziona solo per un cambiamento. Se si ripete la modifica del tipo di visualizzatore le impostazioni per il simbolo saranno perse.

Visualizzatore Simbolo Singolo

Il Visualizzatore singleSymbol Simbolo Singolo rappresenta tutti gli elementi di un layer tramite un unico simbolo definito dall’utente. Vedi Il Selettore dei Simboli per informazioni aggiuntive sulla rappresentazione del simbolo.

../../../_images/singlesymbol_ng_line.png

Fig. 16.3 Finestra di dialogo Simbolo singolo

Visualizzatore Senza Simboli

Il visualizzatore nullSymbol Senza Simboli è un caso di utilizzo speciale della visualizzazione a Simbolo Singolo in quanto applica la stessa rappresentazione a tutti gli oggetti. Utilizzando questa tipologia di visualizzazione, nessuna simbologia verrà disegnata sulle caratteristiche geometriche (sulla rappresentazione del punto o della linea o del poligono), ma l’etichettatura, eventuali diagrammi e altre parti non-simbologia geometrica saranno ancora visualizzate.

Le selezioni possono ancora essere effettuate sul layer in mappa e le geometrie selezionate verranno visualizzate con un simbolo predefinito. Verranno mostrate anche le geometrie modificate.

Questo è inteso come una comoda scorciatoia per i layer per i quali vuoi mostrare solo le etichette o i diagrammi evitando di dover rendere totalmente trasparente la simbologia per raggiungere questo obiettivo.

Visualizzatore Categorizzato

Il visualizzatore categorizedSymbol Categorizzato è usato per rappresentare gli elementi di un layer, usando una simbologia definita dall’utente il cui aspetto riflette i valori discreti di un campo o di un’espressione.

../../../_images/categorysymbol_ng_line.png

Fig. 16.4 Opzioni Simbologia Categorizzata

Per usare simbologia categorizzata per un layer:

  1. Seleziona la Valore di classificazione: può essere un campo esistente o una espressione 1 che si può digitare nella casella o costruire usando il pulsante associato expression. L’uso delle espressioni per la classificazione evita la necessità di creare un campo solo per la simbologia (ad esempio, se i criteri di classificazione derivano da uno o più attributi).

    L’espressione usata per classificare gli elementi può essere di qualsiasi tipo; per esempio, può:

    • essere un confronto. In questo caso, QGIS restituisce i valori 1 (Vero) e 0 (Falso). Alcuni esempi:

      myfield >= 100
      $id = @atlas_featureid
      myfield % 2 = 0
      within( $geometry, @atlas_geometry )
      
    • combina diversi campi:

      concat( field_1, ' ', field_2 )
      
    • essere un calcolo sui campi:

      myfield % 2
      year( myfield )
      field_1 + field_2
      substr( field_1, -3 )
      
    • essere usata per trasformare valori lineari in classi discrete, per esempio:

      CASE WHEN x > 1000 THEN 'Big' ELSE 'Small' END
      
    • combina diversi valori discreti in un’unica categoria, per esempio:

      CASE
      WHEN building IN ('residence', 'mobile home') THEN 'residential'
      WHEN building IN ('commercial', 'industrial') THEN 'Commercial and Industrial'
      END
      

    Suggerimento

    Sebbene puoi utilizzare qualsiasi tipo di espressione per categorizzare le geometrie, per alcune espressioni complesse potrebbe essere più semplice utilizzare la rule-based rendering.

  2. Configurare il Symbol che sarà usato come simbolo base per tutte le classi;

  3. Specificare il Color ramp cioè l’intervallo di colori da cui viene selezionato il colore applicato ad ogni simbolo.

    Oltre alle opzioni comuni del color ramp widget puoi applicare una scala di colori unchecked Random Color alle categorie. Puoi cliccare sulla voce Rimescola colori casuali per rigenerare un nuovo set di colori casuali se non sei soddisfatto.

  4. Poi clicca sul pulsante Classifica per creare classi dai valori distinti del campo o dell’espressione fornita.

  5. Applica le modifiche se live update non è in uso e ogni elemento sulla mappa sarà rappresentato con il simbolo della sua classe.

    Per impostazione predefinita, QGIS aggiunge una classe tutti gli altri valori alla lista. Sebbene sia vuota all’inizio, questa classe viene utilizzata come classe predefinita per qualsiasi elemento che non rientra nelle altre classi (ad esempio, quando si creano elementi con nuovi valori per il campo/espressione di classificazione).

Ulteriori modifiche possono essere fatte alla classificazione predefinita:

  • Puoi scegliere symbologyAdd Aggiungi nuove categorie, symbologyRemove Elimina categorie selezionate o Elimina Tutto.

  • Una classe può essere disabilitata deselezionando la casella di controllo a sinistra del nome della classe; gli elementi corrispondenti vengono nascosti sulla mappa.

  • Trascina le righe per riordinare le classi

  • Per cambiare il simbolo, il valore o la legenda di una classe, fai doppio clic sull’oggetto.

Facendo clic con il tasto destro del mouse sull’oggetto(i) selezionato, viene visualizzato un menu contestuale per:

  • Copia Simbolo e Incolla Simbolo, un modo conveniente per applicare la rappresentazione di un oggetto ad altri oggetti

  • Cambia Colore… del simbolo(i) selezionato

  • Cambia Opacità… del simbolo(i) selezionato

  • Cambia Unità Output… del simbolo(i) selezionato

  • Cambia Larghezza… del simbolo(i) di linea selezionato

  • Cambia Dimensione… del simbolo(i) di punti selezionato

  • Cambia Angolo… del simbolo(i) di punti selezionato

  • Fondi Categorie: Raggruppa più categorie selezionate in una sola. Questo permette uno stile più semplice dei layer con un gran numero di categorie, dove può essere possibile raggruppare numerose categorie distinte in un insieme più piccolo e gestibile di categorie che si applicano a più valori.

    Suggerimento

    Poiché il simbolo utilizzato per le categorie fuse è quello della categoria selezionata più in alto nella lista, potresti spostare in alto la categoria di cui vuoi riutilizzare il simbolo prima di fonderla.

  • Separa Categorie che sono state precedentemente unite

Le classi create appaiono anche in una gerarchia ad albero nel pannello Layer. Fai doppio clic su una voce della legenda della mappa per modificare il simbolo assegnato. Facendo clic con il tasto destro del mouse, verranno visualizzate alcune more options.

Il menu Avanzato dà accesso alle opzioni per velocizzare la classificazione o perfezionare il disegno dei simboli:

  • Fai corrispondere ai Simboli Salvati: Usando la symbols library, assegna ad ogni categoria un simbolo il cui nome rappresenta il valore di classificazione della categoria

  • Abbina ai Simboli dal File…: Fornito un file con simboli, assegna ad ogni categoria un simbolo il cui nome rappresenta il valore di classificazione della categoria

  • Symbol levels… per definire l’ordine di visualizzazione dei simboli.

Visualizzatore Graduato

Il graduatedSymbol Visualizzatore graduato è usato per visualizzare tutte le geometrie di un layer, utilizzando un simbolo definito dall’utente il cui colore o dimensione riflettono la classificazione in classi dell’attributo scelto.

Come il Visualizzatore Categorizzato, quello Graduato ti permette di impostare la rotazione e la dimensione della scala in base a valori presenti in colonne specifiche.

Inoltre, analogamente al Visualizzatore Categorizzato, ti permette di selezionare:

  • Il Valore della classificazione: può essere un campo esistente o una espressione 1 che si può digitare nella casella o costruire usando il pulsante associato expression. L’uso di espressioni per la classificazione evita la necessità di creare un campo solo per la simbologia (ad esempio, se i criteri di classificazione derivano da uno o più attributi).

  • Il simbolo (utilizzando la finestra di dialogo Selettore simbolo)

  • Il formato legenda e la precisione

  • Il metodo da usare per cambiare il simbolo: colore e dimensione

  • I colori (usando la Scala di colori) se il metodo per il colore è selezionato

  • La dimensione (utilizzando il dominio di dimensioni e la sua unità)

Quindi puoi utilizzare la scheda Istogramma che mostra un istogramma interattivo dai valori del campo assegnato o dalla espressione. Le interruzioni di classe possono essere spostate o aggiunte utilizzando il widget istogramma.

Nota

Puoi usare il pannello Sintesi delle Statistiche per ottenere maggiori informazioni sul tuo vettore. Vedi Pannello Statistiche.

Tornando alla scheda Classi, puoi specificare il numero di classi e anche la modalità per classificare le geometrie all’interno delle classi (utilizzando l’elenco in Modo). Le modalità disponibili sono:

  • Conteggio uguale (quantile): ogni classe avrà lo stesso numero di elementi (il concetto di un boxplot).

  • Intervallo Uguale: ogni classe avrà la stessa dimensione (ad esempio, con i valori da 1 a 16 e quattro classi, ogni classe avrà una dimensione di quattro).

  • Scala logaritmica: adatta a dati con un’ampia gamma di valori. Classi strette per valori bassi e classi larghe per valori grandi (ad esempio, per numeri decimali con intervallo [0..100] e due classi, la prima classe sarà da 0 a 10 e la seconda da 10 a 100).

  • Intervalli Naturali (Jenks): la varianza all’interno di ogni classe è minimizzata mentre la varianza tra le classi è massimizzata.

  • Pretty Breaks: calcola una sequenza di circa n+1 valori equamente distanziati che coprono la gamma dei valori in x. I valori sono scelti in modo che siano 1, 2 o 5 volte una potenza di 10. (basato su Pretty dell’ambiente statistico R https://www.rdocumentation.org/packages/base/topics/pretty).

  • Deviazione standard: le classi sono costruite in funzione della deviazione standard dei valori.

La parte centrale della scheda Simbologia elenca le classi insieme ai relativi intervalli, etichette e simboli che verranno sottoposti a visualizzazione.

Clicca sul pulsante Classifica per creare la classi usando il metodo scelto. Ogni classe può essere disabilitata spuntando la casella a sinistra del nome della classe.

Per cambiare simbolo, valore e/o etichetta della classe, semplicemente fai doppio click sull’oggetto che vuoi cambiare.

Facendo clic con il tasto destro del mouse sull’oggetto(i) selezionato, viene visualizzato un menu contestuale per:

  • Copia Simbolo e Incolla Simbolo, un modo conveniente per applicare la rappresentazione di un oggetto ad altri oggetti

  • Cambia Colore… del simbolo(i) selezionato

  • Cambia Opacità… del simbolo(i) selezionato

  • Cambia Unità Output… del simbolo(i) selezionato

  • Cambia Larghezza… del simbolo(i) di linea selezionato

  • Cambia Dimensione… del simbolo(i) di punti selezionato

  • Cambia Angolo… del simbolo(i) di punti selezionato

L’esempio in Fig. 16.5 mostra la finestra di dialogo di visualizzazione graduata per il layer major_rivers del dataset di esempio QGIS.

../../../_images/graduatedsymbol_ng_line.png

Fig. 16.5 Finestra di dialogo Simbologia Graduata

Le classi create appaiono anche in una gerarchia ad albero nel pannello Layer. Fai doppio clic su una voce della legenda della mappa per modificare il simbolo assegnato. Facendo clic con il tasto destro del mouse, verranno visualizzate alcune more options.

Simboli Proporzionali e Analisi Multivariata

Il Simbolo Proporzionale e l’Analisi Multivariata non sono tipologie di visualizzazione disponibili nell’elenco a discesa dello stile. Tuttavia con le opzioni data-defined override applicate a qualsiasi delle precedenti opzioni di Visualizzazione, QGIS ti consente di visualizzare i dati di punti e linee con tale rappresentazione.

Creare simboli proporzionali

Per applicare una rappresentazione proporzionale:

  1. Per prima cosa applica al layer il single symbol renderer.

  2. Quindi imposta il simbolo da applicare alle geometrie.

  3. Seleziona la voce al livello superiore dell’albero dei simboli, e usa il pulsante button dataDefine Sovrascrittura definita dai dati accanto all’opzione Dimensione (per layer puntuale) o Larghezza (per layer lineare).

  4. Seleziona un campo o inserisci un’espressione e, per ogni geometria, QGIS applicherà il valore di output alla proprietà e ridimensionerà proporzionalmente il simbolo nell’area di disegno della mappa.

    Se necessario, utilizza l’opzione Assistente…. del menu dataDefine per applicare alcune trasformazioni (esponenziale, flannery….) al ridimensionamento della dimensione del simbolo (vedi Usare l’interfaccia assistente definizione dati per maggiori dettagli).

Puoi scegliere di visualizzare i simboli proporzionali nel pannello Layers: apri l’elenco a discesa Avanzato in fondo alla finestra di dialogo principale della scheda Simbologia e seleziona Dimensione legenda definita dai dati… per configurare le voci della leggenda (vedi Dimensione legenda definita dai dati per i dettagli).

Creazione di analisi multivariata

Una visualizzazione con analisi multivariata ti consente di valutare la relazione tra due o più variabili ad esempio, una può essere rappresentata da una scala di colori mentre l’altra è rappresentata da una dimensione.

Il modo più semplice per creare analisi multivariate in QGIS è quello di:

  1. Per prima cosa applica una rappresentazione categorizzata o graduata su un layer, usando lo stesso tipo di simbolo per tutte le classi.

  2. Poi, applica una simbologia proporzionale alle classi:

    1. Clicca sul pulsante Cambia sopra il riquadro di classificazione: si apre la finestra di dialogo simbolo-selettore.

    2. Ridimensiona la dimensione o la larghezza del simbolo del layer usando il widget dataDefine data defined override come visto sopra.

Come il simbolo proporzionale, la simbologia in scala può essere aggiunta all’albero dei layer, nella parte superiore dei simboli delle classi categorizzate o graduate usando la funzione data defined size legend. Ed entrambe le rappresentazioni sono disponibili nella voce della legenda del layout di stampa.

../../../_images/multivariate_example.png

Fig. 16.6 Esempio di analisi multivariata con legenda a scalare

Visualizzazione basata su Regole

Le regole sono QGIS expressions usate per classificare gli elementi in base ai loro attributi o proprietà al fine di applicare loro specifiche impostazioni di visualizzazione. Le regole possono essere nidificate, e gli elementi appartengono ad una classe se appartengono a tutti i livelli di annidamento superiori.

Il visualizzatore ruleBasedSymbol Tramite regole è quindi progettato per visualizzare tutti gli elementi di un layer, usando simboli il cui aspetto riflette l’assegnazione di un elemento selezionato a una classe a livello di dettaglio.

Per creare una regola:

  1. Attiva una riga esistente facendo doppio clic su di essa (per impostazione predefinita, QGIS aggiunge un simbolo senza una regola quando la modalità di visualizzazione è abilitata) o fai clic sul pulsante symbologyEdit Modifica regola o symbologyAdd Aggiungi regola.

  2. Nella finestra di dialogo Modifica regola che si apre, puoi definire una etichetta per aiutarti a identificare ogni regola. Questa è l’etichetta che verrà visualizzata nel pannello Layer e anche nella legenda del layout di stampa.

  3. Inserisci manualmente una espressione nella casella di testo accanto all’opzione radioButtonOn Filtro oppure premi il pulsante expression accanto ad essa per aprire la finestra di dialogo del costruttore di stringhe di espressione.

  4. Usa le funzioni fornite e gli attributi del layer per costruire un’espressione expression per filtrare le caratteristiche che vorresti selezionare. Premi il pulsante Prova per controllare il risultato della query.

  5. Puoi digitare un’etichetta più lunga per rendere più completa la descrizione della regola.

  6. Puoi utilizzare l’opzione checkbox Intervallo di scala per impostare le scale alle quali applicare la regola.

  7. Infine, configura il simbolo simbolo da usare per queste geometrie.

  8. E premi OK.

Una nuova riga che riassume la regola viene aggiunta alla finestra di dialogo Proprietà Layer. Puoi creare tutte le regole necessarie seguendo i passaggi precedenti o copiare incollandola una regola esistente. Trascina e rilascia le regole una sopra l’altra per annidarle e perfezionare le funzionalità delle regole superiori nelle sottoclassi.

Il visualizzatore basato su regole può essere combinato con visualizzatori categorizzati o graduati. Selezionando una regola, puoi organizzare i suoi elementi in sottoclassi usando il menu a tendina Affina Regole Selezionate. Le classi raffinate appaiono come sotto-voci della regola, in una gerarchia ad albero e come il loro genitore, puoi impostare la simbologia e la regola di ogni classe. Il raffinamento automatico delle regole può essere basato su:

  • Scale: dando una lista di scale, questa opzione crea un insieme di classi a cui si applicano le diverse scale definite dall’utente. Ogni nuova classe basata sulla scala può avere la propria simbologia ed espressione di definizione. Questo può essere ad esempio un modo conveniente per visualizzare gli stessi elementi con vari simboli a scale diverse, o visualizzare solo un insieme di elementi a seconda della scala (ad esempio aeroporti locali a grande scala contro aeroporti internazionali a piccola scala).

  • Categorie: applica un categorized renderer agli elementi che rientrano nella regola selezionata.

  • o Intervalli: applica un graduated renderer agli elementi che rientrano nella regola selezionata.

Le classi raffinate appaiono come sotto-voci della regola, in una gerarchia ad albero e come sopra, puoi impostare la simbologia di ogni classe. I simboli delle regole annidate sono impilati uno sull’altro, quindi fai attenzione nella scelta. È anche possibile deselezionare unchecked Simboli nella finestra di dialogo Modifica regola per evitare di visualizzare un particolare simbolo nella pila.

Nella finestra di dialogo Modifica regola, puoi evitare di scrivere tutte le regole e utilizzare l’opzione radioButtonOff Altrimenti per rilevare tutte le geometrie che non corrispondono a nessuna delle altre regole, nello stesso layer. Questo può anche essere ottenuto scrivendo Else nella colonna Regola della finestra di dialogo Proprietà Layer ► Simbologia ► Tramite regole.

Facendo clic con il tasto destro del mouse sull’oggetto(i) selezionato, viene visualizzato un menu contestuale per:

  • Copia e Incolla, un modo semplice per creare nuove voci basate su voci esistenti

  • Copia Simbolo e Incolla Simbolo, un modo conveniente per applicare la rappresentazione di un oggetto ad altri oggetti

  • Cambia Colore… del simbolo(i) selezionato

  • Cambia Opacità… del simbolo(i) selezionato

  • Cambia Unità Output… del simbolo(i) selezionato

  • Cambia Larghezza… del simbolo(i) di linea selezionato

  • Cambia Dimensione… del simbolo(i) di punti selezionato

  • Cambia Angolo… del simbolo(i) di punti selezionato

  • Affina regola corrente: apre un sottomenu che permette di raffinare la regola corrente con Scale, Categorie o Intervalli. Uguale a selezionare il corresponding menu in fondo alla finestra di dialogo.

Deselezionando una riga nella finestra di dialogo del visualizzatore basato su regole, si nascondono nell’area di visualizzazione della mappa gli elementi della regola specifica e quelli annidati.

Le regole create appaiono anche in una gerarchia ad albero nella legenda della mappa. Fai doppio clic su una voce della legenda della mappa per modificare il simbolo assegnato. Facendo clic con il tasto destro del mouse, otterrai more options.

L’esempio in Fig. 16.7 mostra il dialogo visualizzazione basata su regole per il layer rivers del dataset di esempio QGIS.

../../../_images/rulesymbol_ng_line.png

Fig. 16.7 Opzioni Simboli definiti Tramite regole

Visualizzatore Spostamento Punto

Il renderer pointDisplacementSymbol Spostamento Punto prende gli elementi puntuali che rientrano in una determinata tolleranza di distanza l’uno dall’altro e posiziona i loro simboli attorno al loro baricentro, seguendo diversi metodi di posizionamento. Questo può essere un modo conveniente per visualizzare tutti gli elementi di un layer di punti, anche se hanno la stessa posizione (ad esempio, servizi in un edificio).

Per configurare una visualizzazione di spostamento punto, devi:

  1. Impostare il Centra simbolo: come apparirà il punto virtuale al centro

  2. Selezionare il tipo di Visualizzazione: come vuoi classificare gli elementi nel layer (singoli, categorizzati, basati su regole…).

  3. Premere il pulsante Impostazioni Visualizzatore… per configurare la simbologia degli elementi in base alla visualizzazione selezionata.

  4. Indicare la tolleranza di Distanza in cui gli elementi vicini sono considerati sovrapposti e quindi spostati sullo stesso punto virtuale. Supporta le comuni unità di misura dei simboli.

  5. Configurare i metodi di Posizionamento:

    • Anello: posiziona tutti i punti su un cerchio il cui raggio dipende dal numero di punti da visualizzare.

    • Anelli concentrici: utilizza una serie di cerchi concentrici per mostrare i punti.

    • Reticolo: genera un reticolo regolare con un simbolo puntuale ad ogni intersezione.

  6. I simboli spostati sono posizionati sulle Linee di Spostamento. Sebbene la spaziatura minima delle linee di spostamento dipenda dalla visualizzazione dei simboli dei punti, puoi comunque personalizzare alcune impostazioni, come Spessore tratto, Colore tratto e Rettifica dimensione (ad esempio, per aggiungere una maggiore spaziatura tra i punti resi).

  7. Utilizzare le opzioni del gruppo Etichette per eseguire l’etichettatura dei punti: le etichette sono posizionate vicino al simbolo spostato e non nella posizione reale dell’elemento.

    1. Selezionare l” Attributo etichetta: un campo del layer da utilizzare per l’etichettatura.

    2. Indicare le proprietà e le dimensioni del Carattere dell’etichetta

    3. Scegliere un Colore etichetta.

    4. Impostare un Fattore distanza etichetta: per ogni elemento punto, sposta l’etichetta dal centro del simbolo in modo proporzionale alla dimensione della diagonale del simbolo.

    5. Attivare Usa etichettatura in funzione della scala se vuoi visualizzare le etichette solo su scale maggiori di una determinata Minima scala della mappa.

../../../_images/poi_displacement.png

Fig. 16.8 Finestra di dialogo Spostamento punto

Nota

Il visualizzatore Spostamento punto non altera la geometria dei punti, il che significa che i punti non vengono spostati dalla loro posizione. Si trovano ancora al loro posto iniziale. Le modifiche sono solo visive, a scopo di visualizzazione. Utilizza invece l’algoritmo di Processing Spostamento punti se vuoi generare punti spostati.

Visualizzatore Gruppo di Punti

A differenza del visualizzatore pointDisplacementSymbol Spostamento Punto che esalta il posizionamento degli elementi puntuali più vicini o sovrapposti, il visualizzatore pointClusterSymbol Gruppo di Punti raggruppa i punti vicini in una visulazziazione con un unico simbolo. I punti che si trovano a una determinata distanza l’uno dall’altro vengono uniti in un unico simbolo. L’aggregazione dei punti avviene in base alla formazione del gruppo più vicino, invece di assegnare semplicemente il primo gruppo entro la distanza di ricerca.

Dalla finestra di dialogo principale, puoi:

  1. Impostare il simbolo per rappresentare il gruppo di punti nel Simbolo gruppo; il risultato predefinito mostra il numero di elementi aggregati grazie alla @dimensione_cluster variabile sul Carattere del livello simbolo.

  2. Seleziona il tipo di Visualizzatore, cioè come vuoi classificare gli elementi nel layer (singolo, categorizzato, tramite regole…).

  3. Premi il pulsante Impostazioni Visualizzatore… per configurare come di consueto la simbologia degli elementi. Da notare che questa simbologia è visibile solo sugli elementi che non sono raggruppati, altrimenti viene applicato il simbolo Gruppo. Inoltre, quando tutte gli elementi puntuali di un gruppo appartengono alla stessa classe di visualizzazione, e quindi gli viene applicato lo stesso colore, questo colore rappresenta la variabile @colore_cluster del gruppo.

  4. Indica la massima Distanza da considerare per il raggruppamento degli elementi. Supporta le comuni unità di misura dei simboli.

../../../_images/cluster_symbol.png

Fig. 16.9 Finestra di dialogo Gruppo di punti

Nota

Il visualizzatore Gruppo di Punti non altera la geometria dei punti, il che significa che i punti non vengono spostati dalla loro posizione. Si trovano ancora al loro posto iniziale. Le modifiche sono solo visive, di visualizzazione. Utilizza invece l’algoritmo di Processing K-means clustering o DBSCAN clustering se vuoi generare punti basati su cluster.

Visualizzatore Elementi Fusi

Il visualizzatore mergedFeatures Elementi Fusi permette agli elementi di area e di linea di essere «dissolti» in un singolo oggetto prima della visualizzazione per assicurare che simboli complessi o elementi che si sovrappongono siano rappresentati da un simbolo cartografico uniforme e contiguo.

Visualizzatore Poligoni Invertiti

La visualizzazione invertedSymbol Poligoni invertiti consente all’utente di definire un simbolo al di fuori dei poligoni del layer. Come sopra puoi selezionare le altre visualizzazioni, ovvero Simbolo singolo, Graduato, Categorizzato, Basato su regole o Visualizzazione 2.5D.

../../../_images/inverted_polygon_symbol.png

Fig. 16.10 Finestra di dialogo Poligoni invertiti

Visualizzatore Mappa di Concentrazione

Con la visualizzazione heatmapSymbol Mappa di concentrazione puoi creare mappe di concentrazione dinamiche per layer puntuali e multi-puntuali. Puoi specificare il raggio di concentrazione in millimetri, punti, pixel, unità di mappa o pollici, scegliere e modificare una scala di colore per lo stile di concentrazione e utilizzare un cursore per selezionare un compromesso tra la velocità di visualizzazione e la qualità. Inoltre puoi definire un valore limite massimo e dare un peso ai punti utilizzando un campo o una espressione. Quando si aggiunge o si rimuove una geometria, il visualizzatore Mappa di concentrazione aggiorna automaticamente lo stile.

../../../_images/heatmap_symbol.png

Fig. 16.11 Finestra di dialogo Mappa di concentrazione

Visualizzatore 2.5D

Utilizzando la visualizzazione 25dSymbol 2.5D è possibile creare un effetto 2.5D sulle geometrie del tuo layer. Inizia scegliendo un valore di Altezza (in unità di mappa). Per questo puoi utilizzare un valore fisso, uno dei campi del tuo layer o un’espressione. È inoltre devi scegliere un Angolo (in gradi) per ricreare la posizione del visualizzatore (0 ° significa ovest, crescente in senso antiorario). Usa le opzioni avanzate di configurazione per impostare il Colore tetto e Colore muro. Se vuoi simulare la radiazione solare sulle pareti degli elementi, assicurati di scegliere l’opzione Ombra muri basata sull’esposizione. Puoi anche simulare la presenza di un’ombra impostando un Colore e una Dimensione (in unità di mappa).

../../../_images/2_5dsymbol.png

Fig. 16.12 Finestra di dialogo mappa 2.5D

Suggerimento

Utilizzare l’effetto 2.5D con altre visualizzazioni

Una volta che hai finito di impostare lo stile di base nella visualizzazione 2.5D, puoi convertirlo in un altra tipologia di visualizzazione (Singolo, Categorizzato, Graduato). Gli effetti 2.5D verranno mantenuti e tutte le altre opzioni di visualizzazione saranno disponibili per essere o meno confermate (in questo modo puoi avere, ad esempio, simboli categorizzati con una bella rappresentazione 2.5D o aggiungere un certo stile aggiuntivo ai tuoi simboli 2.5D). Per assicurarti che l’ombra e l“«edificio» non interferiscano con altre geometrie vicine, potrebbe essere necessario attivare i Livelli dei simboli ( Avanzato ► Livelli Simboli…). I valori di altezza e angolo 2.5D vengono salvati nelle variabili del layer, quindi puoi modificarla successivamente nella scheda variabili della finestra di dialogo delle proprietà del layer

Visualizzatore Simboli Incorporati

Il visualizzatore Simboli Incorporati permette di visualizzare la simbologia «nativa» di una fonte di dati fornita. Questo è soprattutto il caso dei dataset KML e TAB che hanno una simbologia predefinita.

16.1.3.2. Visualizzazione del layer

Nella scheda Simbologia puoi anche impostare alcune opzioni che agiscono contemporaneamente su tutte le geometrie del layer:

  • Opacità slider: Con questo strumento è possibile rendere visibile il layer sottostante della mappa. Usa il cursore per adattare la visibilità del tuo layer vettoriale alle tue esigenze. Puoi anche definire con precisione la percentuale di visibilità nel menu accanto al cursore.

  • Modalità fusione layer e Modalità fusione elementi: puoi ottenere effetti speciali di visualizzazione con questi strumenti che potresti già aver avuto a disposizione con programmi specializzati per la elaborazione di immagini. I pixel dei tuoi layer in sovrapposizione e di geometria sovrapposte vengono mischiati tramite le impostazioni descritte in Metodi di fusione.

  • Applica paint effects su tutte le geometrie del layer con il pulsante Personalizza effetti.

  • Controllo ordine di visualizzazione delle geometrie ti permette, utilizzando gli attributi delle geometrie, di definire in quale ordine z vengono visualizzati. Attiva la casella di controllo e fai clic sul pulsante accanto sort. Ottiene quindi la finestra di dialogo Definisci l’ordine in cui:

    1. Scegli un campo o crea un’Espressione da applicare alle geometrie del layer.

    2. Imposta con quale sequenza le geometrie coinvolte devono essere ordinate, quindi se scegli ordine Crescente, le geometrie con valore inferiore vengono visualizzate sotto quelle con valore superiore.

    3. Definisci se le geometrie che hanno per il campo scelto valore NULL devono essere visualizzati per Prime o per Ultime.

    4. Ripeti i passaggi precedenti per tutte le regole che vuoi utilizzare.

    La prima regola viene applicata a tutte le geometrie del layer, ordinandole in base al valore z restituito. Quindi, per ciascun gruppo di geometrie con lo stesso valore (compresi quelli con valore NULL) e quindi dello stesso livello z, viene applicata la regola successiva per ordinare i propri elementi tra di loro. E così via…

../../../_images/layer_rendering_options.png

Fig. 16.13 Opzioni di visualizzazione del layer

16.1.3.3. Altre impostazioni

Livelli simbolo

Per i visualizzatori che permettono layer di simbolo sovrapposti (solo la mappa di concentrazione non lo permette) c’è un’opzione per controllare l’ordine di visualizzazione di ciascun livello del simbolo.

Nella maggior parte delle visualizzazioni puoi accedere all’opzione livelli dei simboli facendo clic sul pulsante Avanzato al di sotto dell’elenco dei simboli salvati e scegliendo Livelli simbolo…. Nell’opzione Visualizzazione basata su Regole è direttamente disponibile tramite il pulsante Livelli simbolo…, mentre nella visualizzazione Visualizzatore Spostamento Punto lo stesso pulsante si trova all’interno della finestra di dialogo Impostazioni Visualizzatore….

Per attivare i livelli dei simboli, selezionare checkbox Abilita livelli simbolo. Ogni riga mostrerà un piccolo campione del simbolo combinato, la sua etichetta e il singolo livello di simbolo diviso in colonne con un numero accanto ad esso. I numeri rappresentano l’ordine di visualizzazione con cui verrà prelevato il livello di simbolo. I livelli di valori inferiori vengono tracciati prima, rimanendo in basso, mentre i valori più alti vengono tracciati per ultimi, sopra agli altri.

../../../_images/symbol_levels.png

Fig. 16.14 Finestra di dialogo dei livelli simbolo

Nota

Se i livelli simbolo sono disattivati, saranno mostrati i simboli completi secondo il rispettivo ordine delle geometrie. I simboli sovrapposti copriranno quelli al di sotto di essi. Inoltre, simboli simili non si «uniranno» gli uni con gli altri.

../../../_images/symbol_levels_examples.png

Fig. 16.15 Differenza tra i livelli simboli attivati (A) e disattivati (B)

Dimensione legenda definita dai dati

Quando un layer è rappresentato con il simbolo proportional symbol or the multivariate rendering o quando al layer viene applicato un scaled size diagram, puoi abilitare la visualizzazione dei simboli scalati sia nel Layers panel che nel print legend layout.

Per abilitare la finestra di dialogo Dimensioni della Legenda Definita dai Dati… per attivare la simbologia, seleziona l’opzione del pulsante Avanzato sotto l’elenco dei simboli salvati. Per i diagrammi, l’opzione è disponibile sotto la scheda Legenda. La finestra di dialogo fornisce le seguenti opzioni per:

  • selezionare il tipo di legenda: radioButtonOn Legenda non attivata, radioButtonOff Oggetti della legenda separati e radioButtonOff Legenda racchiusa. Per quest’ultima opzione, puoi selezionare se gli elementi della legenda sono allineati In Basso o Al Centro;

  • visualizzare l’anteprima del symbol to use per la rappresentazione della legenda;

  • inserire il titolo nella legenda;

  • ridefinire le classi da utilizzare: per impostazione predefinita, QGIS fornisce una legenda di cinque classi (basata sulle interruzioni naturali), ma puoi applicare la tua classificazione utilizzando l’opzione checkbox Classi a dimensione manuale. Usa i pulsanti symbologyAdd e symbologyRemove per impostare i valori e le etichette delle classi personalizzate.

  • Per una legenda racchiusa, è possibile:

    • Allinea simboli al centro o in basso

    • configura la congiunzione Simbolo di linea dal simbolo al testo corrispondente della legenda.

Un’anteprima della legenda viene visualizzata nel pannello destro della finestra di dialogo e viene aggiornata man mano che si impostano i parametri.

../../../_images/data_defined_size_legend.png

Fig. 16.16 Impostazione delle dimensioni in scala delle legenda

Nota

Attualmente, la dimensione della legenda definita dai dati per la simbologia dei layer può essere applicata solo al layer di punti utilizzando la simbologia singola, categorizzata o graduata.

Effetti disegno

Al fine di migliorare la rappresentazione dei vettori ed evitare (o perlomeno ridurre) il ricorso ad altri software per la rappresentazione finale delle mappe, QGIS fornisce un’altra potente funzionalità: l’opzione paintEffects Effetti Disegno, che aggiunge effetti grafici per personalizzare la visualizzazione di vettori.

L’opzione è disponibile nella finestra di dialogo Proprietà vettore ► Simbologia, all’interno del gruppo Layer rendering (si applica all’intero layer) oppure in symbol layer properties (si applica alla geometria corrispondente). Puoi combinare entrambi gli usi.

Gli effetti disegno possono essere attivati selezionando l’opzione checkbox Effetti disegno e cliccando il pulsante paintEffects Personalizza effetti. Questo aprirà la finestra di dialogo Proprietà Effetto (vedi Fig. 16.17). Sono disponibili i seguenti tipi di effetto, con opzioni personalizzate:

  • Sorgente: Mostra lo stile originale della geometria in accordo alla configurazione delle proprietà del vettore. La Opacità dello stile può essere regolata così come la Blend mode e la Draw mode. Queste sono proprietà comuni per tutti i tipi di effetti.

    ../../../_images/source.png

    Fig. 16.17 Finestra di dialogo Effetti di disegno

  • Sfumatura: aggiunge un effetto di sfumatura sul layer vettoriale. Le opzioni di personalizzazione che puoi scegliere sono Tipo di sfumatura (Stack blur (fast) o Gaussian blur (quality)) e Grado di sfumatura.

    ../../../_images/blur.png

    Fig. 16.18 Effetti di disegno: finestra di dialogo Sfumatura

  • Colorazione: Questo effetto può essere utilizzato per creare una versione dello stile utilizzando una singola tinta. La base del simbolo avrà sempre una versione in scala di grigi e puoi:

    • Usare selectString Scala di grigi per selezionare come crearlo: le opzioni sono “Per Lucentezza”, “Per Luminosità”, “Per Media” e “Spento”.

    • Se viene selezionato checkboxColora, sarà possibile mescolare un altro colore e scegliere quanto deve essere forte.

    • Controllare i livelli di Brillantezza, Contrasto e Saturazione del simbolo risultante.

    ../../../_images/colorise.png

    Fig. 16.19 Effetti di disegno: finestra di dialogo Colorazione

  • Ombreggiatura: utilizzando questo effetto si aggiunge un’ombra sulla geometria, che sembra aggiungere una dimensione aggiuntiva. Questo effetto può essere personalizzato modificando l’angolo di Offset e la distanza, determinando dove verso dove si sposta l’ombra e la prossimità dell’oggetto sorgente. Ombreggiatura ha anche l’opzione di modificare Raggio di sfumatura e il Colore.

    ../../../_images/drop_shadow.png

    Fig. 16.20 Effetti di disegno: finestra di dialogo Ombreggiatura

  • Ombreggiatura interna: questo effetto è simile all’effetto Ombreggiatura, ma aggiunge l’effetto ombra all’interno dei bordi della geometria. Le opzioni disponibili per la personalizzazione sono le stesse dell’effetto Ombreggiatura.

    ../../../_images/inner_shadow.png

    Fig. 16.21 Effetti di disegno: finestra di dialogo Ombreggiatura interna

  • Luminescenza interna: aggiunge un effetto di incandescenza all’interno della geometria. Questo effetto può essere personalizzato regolando la Diffusione (larghezza) del bagliore o il Raggio di sfumatura. Quest’ultima specifica la vicinanza dal margine della geometria alla quale si vuole che si verifichi la sfumatura. Inoltre, esistono opzioni per personalizzare il colore del bagliore, utilizzando un Colore singolo o una Scala colore.

    ../../../_images/inner_glow.png

    Fig. 16.22 Effetti di disegno: finestra di dialogo Ombreggiatura interna

  • Luminescenza esterna: questo effetto è simile all’effetto Luminescenza interna, ma aggiunge l’effetto di incandescenza all’esterno dei bordi della geometria. Le opzioni disponibili per la personalizzazione sono le stesse dell’effetto Luminescenza interna.

    ../../../_images/outer_glow.png

    Fig. 16.23 Effetti di disegno: finestra di dialogo Ombreggiatura esterna

  • Trasformazione: aggiunge la possibilità di trasformare la forma del simbolo. Le prime opzioni disponibili per la personalizzazione sono Rifletti orizzontalmente e Rifletti verticalmente che creano una rotazione sugli assi orizzontali e / o verticali. Le altre opzioni sono:

    • Tagliare X,Y: allinea la geometria lungo l’asse X e/o Y.

    • Ridimensiona X,Y: ingrandisce o rimpicciolisce la geometria lungo l’asse X e/o Y per la percentuale data,

    • Rotazione: ruota la geometria intorno al punto centrale.

    • e Trasla X,Y modifica la posizione dell’oggetto in base a una distanza data sull’asse X e/o sull’asse Y.

    ../../../_images/transform.png

    Fig. 16.24 Effetti di disegno: finestra di dialogo Trasformazione

Uno o più effetti di disegno possono essere usati contemporaneamente. Puoi attivare/disattivare un effetto utilizzando la relativa casella di controllo nell’elenco degli effetti. Puoi modificare il tipo di effetto selezionato utilizzando l’opzione selectString Tipo effetto . Puoi riordinare gli effetti utilizzando i pulsanti arrowUp Sposta in alto e arrowDown Sposta in basso e anche aggiungere o rimuovere gli effetti utilizzando i pulsanti symbologyAdd Aggiungi nuovo effetto e symbologyRemove Rimuovi effetto.

Ci sono alcune opzioni comuni disponibili per tutti i tipi di effetti. Le opzioni Opacità e Modalità fusione operano in modo simile a quelle descritte in Visualizzazione del layer e possono essere utilizzate in tutti gli effetti di disegno, tranne che per la Trasformazione.

C’è anche un’opzione selectString Modalità disegno disponibile per ogni effetto, e puoi scegliere se visualizzare e/o modificare il simbolo, seguendo alcune regole:

  • Visualizza gli effetti dall’alto verso il basso.

  • la modalità Visualizza solamente significa che l’effetto sarà visibile.

  • la modalità Modifica solamente significa che l’effetto non sarà visibile ma i cambiamenti che applica saranno passati all’effetto successivo (quello immediatamente sotto).

  • La modalità Visualizza e modifica renderà visibile l’effetto e passerà tutte le modifiche all’effetto successivo. Se l’effetto si trova in cima alla lista degli effetti o se l’effetto immediatamente precedente non è in modalità modifica, allora utilizzerà il simbolo originale dalle proprietà dei layer (simile al sorgente).

16.1.4. Proprietà etichette

La proprietà labelingSingle Etichette fornisce tutte le funzionalità necessarie e appropriate per configurare l’etichettatura intelligente sui layer vettoriali. Questa finestra di dialogo è accessibile anche dal pannello Stile Layer, o usando il pulsante labelingSingle Opzioni per le etichette del Layer della Barra delle Etichette.

Il primo passo è quello di scegliere il metodo di etichettatura dall’elenco a discesa. I metodi disponibili sono:

  • labelingNone Non mostrare etichette: il valore predefinito, che non mostra alcuna etichetta per il layer.

  • labelingSingle Etichette Singole: Mostra le etichette sulla mappa usando un singolo attributo o un’espressione

  • labelingRuleBased Rule-based labeling

  • e labelingObstacle Non coprente: ti permette di impostare un layer come un ostacolo per le etichette degli altri layer senza che vengano visualizzate le relative etichette.

I prossimi passi presuppongono che tu selezioni l’opzione labelingSingle Etichette Singole, aprendo la seguente finestra di dialogo.

../../../_images/label_menu_text.png

Fig. 16.25 Impostazioni etichettatura dei layer - Etichette Singole

Nella parte superiore della finestra di dialogo, è abilitato un elenco a discesa Valore. Puoi selezionare una colonna di attributi da usare per l’etichettatura. Per impostazione predefinita, viene usato display field. Fai clic su expression se vuoi definire etichette basate su espressioni - vedi Definire le etichette tramite espressioni.

Nota

Le etichette con la loro formattazione possono essere visualizzate come voci nelle leggende, se abilitate nella scheda Legend.

Di seguito vengono visualizzate le opzioni per personalizzare le etichette, sotto varie schede:

La descrizione di come impostare ogni proprietà è esposta in Impostare una etichetta.

16.1.4.1. Impostazioni sistema di posizionamento automatico

Puoi usare le impostazioni di posizionamento automatico per configurare un comportamento automatico delle etichette a livello di progetto. Nell’angolo in alto a destra della scheda Etichette, fai clic sul pulsante autoPlacementSettings Impostazioni di disposizione automatica (si applicano a tutti i layer), aprendo una finestra di dialogo con le seguenti opzioni:

../../../_images/placement_engine.png

Fig. 16.26 Il motore di posizionamento automatico delle etichette

  • Numero di Candidati: calcola e assegna agli elementi lineari e poligonali il numero di possibili posizionamenti delle etichette in base alla loro dimensione. Più un elemento è lungo o largo, più candidati ha, e le sue etichette possono essere posizionate meglio con meno rischi di collisione.

  • Visualizzazione testo: imposta il valore predefinito per i widget di visualizzazione delle etichette quando exporting a map canvas o a layout in PDF o in SVG. Se è selezionato Rendering sempre delle Etichette come Testo, allora le etichette possono essere modificate in applicazioni esterne (ad esempio Inkscape) come testo normale. MA l’effetto collaterale è che la qualità del rendering è minore, e ci sono problemi con il rendering quando sono attive certe impostazioni di testo come i buffer. Ecco perché Rendering sempre delle Etichette come Percorsi (raccomandato) che esporta le etichette come contorni, è raccomandato.

  • checkbox Permetti etichette troncate sui bordi mappa: controlla se le etichette che cadono parzialmente al di fuori dell’estensione della mappa devono essere visualizzate. Se selezionata, queste etichette saranno mostrate (quando non c’è modo di posizionarle completamente all’interno dell’area visibile). Se deselezionato, le etichette parzialmente visibili saranno omesse. Si noti che questa impostazione non ha effetti sulla visualizzazione delle etichette nel layout map item.

  • unchecked Mostra tutte le etichette per tutti i layer (cioè inclusi gli oggetti che collidono). Nota che questa opzione può essere impostata anche per layer (vedi Scheda Visualizzazione)

  • unchecked Mostra etichette non ubicate: permette di determinare se qualche etichetta importante manca dalle mappe (ad esempio a causa di sovrapposizioni o altri vincoli). Vengono visualizzate con un colore personalizzabile.

  • unchecked Mostra candidati (per debugging): controlla se devono essere disegnati dei riquadri sulla mappa che mostrano tutti i candidati generati per il posizionamento delle etichette. Come dice la dicitura, è utile solo per il debug e per testare l’effetto di diverse impostazioni di etichettatura. Potrebbe essere utile per un migliore posizionamento manuale con gli strumenti della label toolbar.

  • Versione di etichettatura del progetto: QGIS supporta due diverse versioni di posizionamento automatico delle etichette:

    • Versione 1: il vecchio sistema (usato da QGIS versione 3.10 e precedenti, e quando si aprono progetti creati in queste versioni in QGIS 3.12 o successivi). La versione 1 tratta le priorità delle etichette e degli ostacoli solo come «guide approssimative», ed è possibile che un’etichetta a bassa priorità sia posta sopra un ostacolo ad alta priorità in questa versione. Di conseguenza, può essere difficile ottenere i risultati di etichettatura desiderati quando si usa questa versione ed è quindi raccomandata solo per la compatibilità con progetti più vecchi.

    • Versione 2 (raccomandata): questo è il sistema predefinito nei nuovi progetti creati in QGIS 3.12 o successivo. Nella versione 2, la logica che detta quando le etichette possono sovrapporsi a obstacles è stata rielaborata. La nuova logica vieta a qualsiasi etichetta di sovrapporsi a qualsiasi ostacolo con un peso di ostacolo maggiore rispetto alla priorità dell’etichetta. Come risultato, questa versione porta a risultati di etichettatura molto più prevedibili e facili da capire.

16.1.4.2. Etichettatura tramite regole

Con Etichettatura tramite regole le etichette possono essere definite e applicate selettivamente sulla base di filtri tramite espressioni e di intervalli di scala, come nella Rule-based rendering.

Per creare una regola:

  1. Selezionare l’opzione labelingRuleBased Etichettatura tramite Regole nell’elenco a discesa principale della scheda Etichette

  2. Fai clic sul pulsante symbologyAdd Aggiungi regola nella parte inferiore della finestra di dialogo.

  3. Compila la nuova finestra di dialogo con:

    • Descrizione: un testo usato per identificare la regola nella scheda Etichette e come label legend entry nella legenda del layout di stampa

    • Filtro: un’espressione per selezionare gli elementi a cui applicare le impostazioni dell’etichetta

    • Se ci sono regole già impostate, l’opzione Else può essere usata per selezionare tutti gli elementi che non corrispondono a nessun filtro delle regole nello stesso gruppo.

  4. Puoi impostare un scale range in cui la regola dell’etichetta dovrebbe essere applicata.

  5. Le opzioni disponibili sotto la casella di gruppo Etichette sono le solite label settings. Configurale e premi OK.

    ../../../_images/label_rule_settings.png

    Fig. 16.27 Modifica regola

Un riassunto delle regole esistenti è mostrato nella finestra di dialogo principale (vedi Fig. 16.28). Puoi aggiungere più regole, riordinarle o unirle con un drag-and-drop. Puoi anche rimuoverle con il pulsante symbologyRemove o modificarle con il pulsante symbologyEdit o con un doppio clic.

../../../_images/label_rules_panel.png

Fig. 16.28 Pannello etichettatura tramite regole

16.1.4.3. Definire le etichette tramite espressioni

Sia che tu scelga il tipo di etichettatura singola o basata su regole, QGIS consente di utilizzare le espressioni per l’etichettatura di elementi.

Supponendo che tu stia usando il metodo Etichette Singole, fai clic sul pulsante expression vicino all’elenco a discesa Valore nella scheda labelingSingle Etichette della finestra di dialogo Proprietà.

In Fig. 16.29, vedi un’espressione di esempio per etichettare il layer trees dell’Alaska con il tipo di albero e l’area, basata sul campo “VEGDESC”, del testo descrittivo, e la funzione $area in combinazione con format_number() per renderlo più gradevole.

../../../_images/label_expression.png

Fig. 16.29 Uso di espressioni per l’etichettatura

L’etichettatura a base di espressioni è facile da gestire. Tutto quello che devi fare è che:

  • Potresti avere necessità di combinare tutti gli elementi (stringhe, campi e funzioni) con una funzione di concatenamento stringa come concat, + o ||. Ricorda che in alcune situazioni (quando sono coinvolti null o valori numerici), non tutti questi strumenti sono adatti alle tue esigenze.

  • Le stringhe sono scritte tra “singoli apici”.

  • I campi sono scritti tra «apici doppi» o senza alcun apice.

Guarda alcuni esempi:

  1. Etichetta basata su due campi “name” e “place” con una virgola come separatore:

    "name" || ', ' || "place"
    

    Risulta:

    John Smith, Paris
    
  2. Etichetta basata su due campi “name” e “place” con altri testi:

    'My name is ' + "name" + 'and I live in ' + "place"
    'My name is ' || "name" || 'and I live in ' || "place"
    concat('My name is ', name, ' and I live in ', "place")
    

    Risulta:

    My name is John Smith and I live in Paris
    
  3. Etichetta basata su due campi “nome” e “luogo” con altri testi che combinano diverse funzioni di concatenazione:

    concat('My name is ', name, ' and I live in ' || place)
    

    Risulta:

    My name is John Smith and I live in Paris
    

    Oppure, se il campo “place” è NULL, restituisce:

    My name is John Smith
    
  4. Etichetta a più righe basata su due campi “name” e “place” con un testo descrittivo:

    concat('My name is ', "name", '\n' , 'I live in ' , "place")
    

    Risulta:

    My name is John Smith
    I live in Paris
    
  5. Etichetta basata su un campo e la funzione $area per mostrare il nome del luogo e la sua superficie arrotondata in una unità convertita:

    'The area of ' || "place" || ' has a size of '
    || round($area/10000) || ' ha'
    

    Risulta:

    The area of Paris has a size of 10500 ha
    
  6. Creare una condizione CASE ELSE. Se il valore della popolazione nel campo “population” è <= 50000 è una town, altrimenti è una city:

    concat('This place is a ',
    CASE WHEN "population" <= 50000 THEN 'town' ELSE 'city' END)
    

    Risulta:

    This place is a town
    
  7. Visualizza il nome delle città e nessuna etichetta per le altre voci (per il caso della «city», vedi esempio sopra):

    CASE WHEN "population" > 50000 THEN "NAME" END
    

    Risulta:

    Paris
    

Come puoi vedere nel costruttore di espressioni, puoi creare espressioni semplici o molto complesse con tantissime funzioni utili, per etichettare i tuoi dati in QGIS. Vedi il capitolo Espressioni per ulteriori esempi e informazioni sulle espressioni.

16.1.4.4. Etichettare in funzione dei dati

Con la funzione dataDefine Sovrascrittura definita dai dati, le impostazioni per l’etichettatura sono sovrascritte dalle voci della tabella degli attributi o da espressioni basate su di essi. Questa funzione può essere usata per impostare i valori per la maggior parte delle opzioni di etichettatura sopra descritte.

Per esempio, usando il set di dati campione QGIS dell’Alaska, etichettiamo il layer airports con il loro nome, in base al loro USE militare, cioè se l’aeroporto è accessibile a:

  • personale militare, allora mostralo in grigio, dimensione 8;

  • altri, allora mostralo in blu, dimensione 10.

Per ottenere ciò, dopo aver abilitato l’etichettatura sul campo NAME del layer (vedi Impostare una etichetta):

  1. Attiva la scheda Testo.

  2. Fai clic sull’icona dataDefine accanto alla proprietà Dimensioni.

  3. Seleziona Modifica… e digita:

    CASE
      WHEN "USE" like '%Military%' THEN 8 -- because compatible values are 'Military'
                                          -- and 'Joint Military/Civilian'
      ELSE 10
    END
    
  4. Premi OK per convalidare. La finestra di dialogo si chiude e il pulsante dataDefine diventa dataDefineExpressionOn il che significa che una regola è in esecuzione.

  5. Quindi fai clic sul pulsante accanto alla proprietà colore, digita l’espressione sottostante e convalida:

    CASE
      WHEN "USE" like '%Military%' THEN '150, 150, 150'
      ELSE '0, 0, 255'
    END
    

Allo stesso modo, puoi personalizzare qualsiasi altra proprietà dell’etichetta, nel modo desiderato. Vedi maggiori dettagli sulla descrizione e manipolazione del widget dataDefine Sovrascrittura definita dai dati nella sezione Impostazione Sovrascrittura definita dai dati.

../../../_images/label_attribute_data_defined.png

Fig. 16.30 Le etichette degli aeroporti sono formattate in base ai loro attributi

Suggerimento

Usare Sovrascrittura definita dai dati per etichettare ogni parte di elementi a parti multiple

C’è un’opzione per impostare l’etichettatura per gli elementi multi parte indipendentemente dalle tue proprietà dell’etichetta. Scegli il render Rendering, Opzioni Elementi, vai al pulsante dataDefine Sovrascrittura definita dai dati accanto alla casella unchecked Etichetta ogni parte di elementi multipart e definisci le etichette come descritto in Impostazione Sovrascrittura definita dai dati.

Barra delle etichette

La Barra delle Etichette fornisce alcuni strumenti per manipolare le proprietà labelingSingle label (incluso il loro callout) o diagram diagram:

../../../_images/diagram_toolbar.png

Fig. 16.31 La barra degli strumenti etichetta

  • showPinnedLabels Evidenzia Etichette, Diagrammi e Linee di richiamo. Se il layer di questo elemento è modificabile, allora l’evidenziazione è verde, altrimenti è blu.

  • showUnplacedLabel Alterna la visualizzazione delle etichette non collocate: Permette di determinare se alcune etichette importanti mancano dalle mappe (ad esempio a causa di sovrapposizioni o altri vincoli). Sono visualizzate con un colore personalizzabile (vedi Impostazioni sistema di posizionamento automatico).

  • pinLabels Blocca/Sblocca Etichette e Diagrammi. Cliccando o trascinando un’area, blocchi gli elementi sovrapposti. Se clicchi o trascini un’area tenendo premuto Shift, gli elementi vengono sbloccati. Infine, puoi anche cliccare o trascinare un’area tenendo premuto Ctrl per alternare il loro stato di bloccaggio.rea holding Ctrl to toggle their pin status.

  • showHideLabels Mostra/Nascondi Etichette e Diagrammi. Se clicchi sulle etichette, o clicchi e trascini un’area tenendo premuto Shift, esse vengono nascoste. Quando un’etichetta è nascosta, basta cliccare sull’elemento per ripristinarne la visibilità. Se trascini un’area, tutte le etichette nell’area saranno ripristinate.

  • moveLabel Muove un Etichetta, un Diagramma o una Linea di richiamo: clicca per selezionare l’elemento e clicca per spostarlo nel posto desiderato. Le nuove coordinate sono memorizzate in auxiliary fields. Selezionando l’elemento con questo strumento e premendo il tasto Delete si cancella il valore di posizione memorizzato.

  • rotateLabel Ruota una Etichetta. Clicca per selezionare l’etichetta e clicca di nuovo per applicare la rotazione desiderata. Ugualmente, il nuovo angolo è memorizzato in un campo ausiliario. Selezionando un’etichetta con questo strumento e premendo il tasto Delete si cancella il valore di rotazione di questa etichetta.

  • changeLabelProperties Cambia Proprietà Etichetta. Apre una finestra di dialogo per cambiare le proprietà dell’etichetta cliccata; può essere l’etichetta stessa, le sue coordinate, l’angolo, il carattere, la dimensione, l’allineamento multilinea … purché questa proprietà sia stata mappata su un campo. Qui è possibile impostare l’opzione checkbox Etichetta ogni parte dell’elemento.

Avvertimento

Gli strumenti di etichetta sovrascrivono i valori del campo corrente

L’utilizzo di Barra delle etichette per personalizzare l’etichetta effettivamente scrive il nuovo valore della proprietà nel campo mappato. Quindi, presta attenzione a non sostituire inavvertitamente i dati che ti potrebbero essere necessari in seguito!

Nota

Il meccanismo Proprietà Dati Ausiliari può essere utilizzato per personalizzare l’etichettatura (posizione e così via) senza modificare la fonte dati sottostante.

Personalizza le etichette nella mappa

Combinata con la Barra delle Etichette, l’impostazione di sovrascrittura definita dai dati ti aiuta a manipolare le etichette nell’area di visualizzazione della mappa (spostare, modificare, ruotare). Ora descriviamo un esempio usando la funzione di sostituzione dei dati per la funzione moveLabelMuove una Etichetta, un Diagramma o una linea di richiamo (vedi Fig. 16.32).

  1. Importa il lakes.shp dall’insieme di dati di esempio di QGIS.

  2. Fai doppio clic sul layer per aprire le proprietà del layer. Clicca su Etichette e Posizionamento. Seleziona radioButtonOn Offset dal centroide.

  3. Cercare la voce Definito in funzione dei dati. Fai clic sull’icona dataDefine per definire il tipo campo per Coordinata. Scegli xlabel per X e ylabel per Y. Le icone sono ora evidenziate in giallo.

    ../../../_images/label_coordinate_data_defined.png

    Fig. 16.32 Etichettatura di vettori poligonali sovrascritti in funzione dei dati

  4. Fai zoom su un lago

  5. Imposta come modificabile il layer utilizzando il pulsante toggleEditing Attiva modifiche

  6. Vai alla Barra delle Etichette e clicca sull’icona moveLabel. Ora puoi spostare manualmente l’etichetta in un’altra posizione (vedi Fig. 16.33). La nuova posizione dell’etichetta viene salvata nelle colonne xlabel e ylabel della tabella degli attributi.

  7. È anche possibile aggiungere una linea che collega ogni lago alla sua etichetta spostata usando:

Nota

Il meccanismo Proprietà Dati Ausiliari può essere utilizzato con proprietà definite dai dati senza avere una fonte di dati modificabile.

16.1.5. Proprietà Diagrammi

diagram La scheda Diagrammi ti permette di aggiungere una parte grafica ad un layer vettoriale (vedi Fig. 16.34).

Attualmente le tipologie di diagrammi supportati sono:

  • diagramNone Nessun diagramma: il valore di default senza visualizzazione di diagrammi sulle geometrie;

  • piechart Grafico a Torta, un grafico statistico circolare diviso in fette per illustrare la proporzione numerica. La lunghezza dell’arco di ogni fetta è proporzionale alla quantità che rappresenta;

  • text Diagramma Testo, un cerchio diviso orizzontalmente che mostra i valori statistici al suo interno;

  • histogram Istogramma, barre di vari colori per ogni attributo allineate una accanto all’altra

  • stackedBar Barre Impilate, impila le barre di vari colori per ogni attributo l’una sull’altra in verticale o in orizzontale

Nell’angolo in alto a destra della scheda Diagrammi, il pulsante autoPlacementSettings Impostazioni di posizionamento automatico (si applica a tutti i layer) fornisce gli strumenti per controllare la labels placement del diagramma sulla visualizzazione mappa.

Suggerimento

Passare rapidamente tra tipi di diagrammi

Dato che le impostazioni sono quasi comuni ai diversi tipi di diagrammi, nella progettazione del diagramma è possibile modificare facilmente il tipo di diagramma e verificare quale è più appropriato ai tuoi dati senza perdita delle impostazioni e dei dati.

Per ogni tipo di diagramma, le proprietà sono suddivise in più schede:

16.1.5.1. Attributi

Attributi definisce quali variabili da visualizzare nel diagramma. Utilizza il pulsante symbologyAdd Aggiungi elemento per selezionare i campi desiderati nel pannello «Attributi assegnati». Possono essere utilizzati anche gli attributi generati con le Espressioni.

Puoi spostarti su e giù in qualsiasi riga con il clic e trascina, ordinando come vengono visualizzati gli attributi. Puoi inoltre modificare l’etichetta nella colonna «Legenda» o nel colore dell’attributo facendo doppio clic sull’elemento.

Questa etichetta è il testo predefinito visualizzato nella legenda del layout di stampa o dell’albero dei layer.

../../../_images/diagram_tab.png

Fig. 16.34 Proprietà Diagramma - Scheda Attributi

16.1.5.2. Visualizzazione

Visualizzazione definisce come appare il diagramma. Fornisce impostazioni generali che non interferiscono con i valori statistici quali:

  • la trasparenza grafica, lo spessore e il colore del contorno

  • a seconda del tipo di diagramma:

    • per istogramma e barre impilate, la larghezza della barra e la spaziatura tra le barre. Potresti voler impostare la spaziatura a 0 per le barre impilate. Inoltre, il Simbolo della linea dell’asse può essere reso visibile sulla mappa e personalizzato usando line symbol properties.

    • per il diagramma testo, il colore di sfondo del cerchio e il font usato per i testi;

    • per grafici a torta, l” Inizio angolo della prima fetta e la loro Direzione (in senso orario o no).

  • l’uso dell” paint effects sul grafico.

in questa scheda, puoi anche gestire e ottimizzare la visibilità del diagramma con diverse opzioni:

  • Livello del diagramma (z-index): controlla come i diagrammi sono disegnati uno sopra l’altro e sopra le etichette. Un diagramma con un alto indice viene disegnato sopra diagrammi ed etichette;

  • checkbox Mostra tutti i diagrammi: mostra tutti i diagrammi anche se si sovrappongono tra loro;

  • Mostra diagramma: permette di visualizzare solo diagrammi specifici;

  • Mostra sempre: seleziona diagrammi specifici da visualizzare sempre, anche quando si sovrappongono ad altri diagrammi o a etichette delle mappe;

  • impostando Visibilità dipendente dalla scala ;

../../../_images/diagram_tab_appearance.png

Fig. 16.35 Proprietà Diagramma – Scheda Visualizzazione

16.1.5.3. Dimensione

Dimensione è la scheda principale per impostare come sono rappresentate le statistiche selezionate. Le units delle dimensioni del diagramma possono essere “Millimetri”, “Punti”, “Pixel”, “Unità Mappa” o “Pollici”. Puoi usare:

  • Dimensione fissa, una dimensione unica per rappresentare il grafico di tutti gli elementi (non disponibile per gli istogrammi)

  • o Dimensione scalata, basata su un’espressione che usa gli attributi del layer:

    1. In Attributo, seleziona un campo o costruisci un’espressione

    2. Premi Trova per ottenere il Valore massimo dell’attributo o inserisci un valore personalizzato nel widget.

    3. Per gli istogrammi e le barre sovrapposte, inserire un valore Lunghezza barra, usato per rappresentare il Valore massimo degli attributi. Per ogni elemento, la lunghezza della barra verrà scalata linearmente per mantenere questa corrispondenza.

    4. Per grafico a torta e diagramma di testo, inserisci un valore Dimensione, usato per rappresentare il Valore massimo degli attributi. Per ogni elemento, l’area o il diametro del cerchio sarà poi scalato linearmente per mantenere questa corrispondenza (da 0). Una Dimensione minima può comunque essere impostata per piccoli diagrammi.

../../../_images/diagram_tab_size.png

Fig. 16.36 Proprietà Diagrammi – Scheda Dimensione

16.1.5.4. Posizionamento

Posizionamento definisce la posizione del diagramma. A seconda del tipo di geometria del layer, offre diverse opzioni per il posizionamento (maggiori dettagli in Placement):

  • Intorno al punto o Sopra il punto per la geometria di punti. La prima variabile richiede un raggio da rispettare.

  • Attorno alla linea o Sopra alla linea per geometria lineare. Come per gli elementi puntuali, la prima variabile richiede una distanza da rispettare e si può specificare il posizionamento del diagramma rispetto all’elemento (“sopra”, “su” e/o “sotto” la linea). È possibile selezionare diverse opzioni contemporaneamente. In questo caso, QGIS cercherà la posizione ottimale del diagramma. Ricorda che puoi anche usare l’orientamento della linea per la posizione del diagramma.

  • Attorno al centroide (ad una fissata Distanza), Sopra al centroide, Usando il perimetro e Dentro al poligono sono le opzioni per gli elementi poligonali.

Il gruppo Coordinate fornisce un controllo diretto sul posizionamento del diagramma, su base elemento per elemento, usando i loro attributi o un’espressione per impostare le coordinate X e Y. Le informazioni possono anche essere inserite usando lo strumento Move labels and diagrams.

Nella sezione Priorità, puoi definire il grado di priorità di posizionamento di ogni diagramma, cioè se ci sono diversi diagrammi o etichette candidati per la stessa posizione, l’elemento con la priorità più alta sarà visualizzato e gli altri potrebbero essere lasciati fuori.

Evita che i diagrammi e le etichette si sovrappongano alle geometrie definisce gli elementi da usare come obstacles, cioè QGIS cercherà di non posizionare diagrammi o etichette su questi elementi. Il grado di priorità è quindi utilizzato per valutare se un diagramma potrebbe essere omesso a causa di un elemento di ostacolo con un peso maggiore.

../../../_images/diagram_tab_placement.png

Fig. 16.37 Finestra di dialogo proprietà vettori con Proprietà Diagrammi, Scheda Posizionamento

16.1.5.5. Opzioni

La scheda Opzioni ha impostazioni per istogrammi e barre impilate. Puoi scegliere se l” Orientazione della barra debba essere Su, Giù, Destra o Sinistra, per diagrammi orizzontali e verticali.

16.1.5.6. Legenda

Dalla scheda Legenda, puoi scegliere di visualizzare gli oggetti del diagramma nel Layers panel e nella print layout legend accanto alla simbologia del layer:

  • seleziona Mostra legenda degli attributi del diagramma per visualizzare nelle legende le proprietà Colore e Legenda, come precedentemente assegnato nella scheda Attributi;

  • e, quando per i diagrammi viene utilizzata una dimensione scaled size, premi il pulsante Legenda degli attributi della dimensione del diagramma… per configurare l’aspetto del simbolo del diagramma nelle legende. Questo apre la finestra di dialogo Dimensione legenda definita dai dati le cui opzioni sono descritte in Dimensione legenda definita dai dati.

Quando sono impostate, le voci della legenda del diagramma (attributi con colore e dimensioni del diagramma) sono visualizzate anche nella legenda del layout di stampa, accanto alla simbologia dei layer.

16.1.6. Proprietà Maschere

labelmask La scheda Maschere ti aiuta a configurare la sovrapposizione dei simboli del layer corrente con altri layer di simboli o etichette, da qualsiasi layer. Questo ha lo scopo di migliorare la leggibilità di simboli ed etichette i cui colori sono vicini e possono essere difficili da decifrare quando si sovrappongono; aggiunge una maschera personalizzata e trasparente intorno agli elementi per «nascondere» parti dei livelli simbolo del layer corrente.

Per applicare maschere al livello attivo, devi prima abilitare nel progetto o mask symbol layers o mask labels. Poi, dalla scheda Maschere, seleziona:

  • Layer di simboli mascherati: elenca in una struttura ad albero tutti i livelli simbolo del layer corrente. Lì puoi selezionare l’elemento del livello simbolo che vuoi «tagliare» in modo trasparente quando si sovrappongono alle sorgenti della maschera selezionata

  • la scheda Sorgente della maschera: elenca tutte le etichette della maschera e i livelli dei simboli mascherati definiti nel progetto. Seleziona le voci che genererebbero la maschera sui livelli dei simboli mascherati selezionati

../../../_images/masks_properties.png

Fig. 16.38 Proprietà Layer - Scheda Maschere

16.1.7. Proprietà Vista 3D

3d La scheda Vista 3D fornisce le impostazioni per i layer vettoriali che dovrebbero essere rappresentati nello strumento 3D Map view.

Per visualizzare un layer in 3D, seleziona dal menu a tendina nella parte superiore della scheda, o:

  • Simbolo singolo: le caratteristiche sono rese usando un simbolo 3D comune le cui proprietà possono essere data-defined o meno. Leggi i dettagli su setting a 3D symbol per ogni tipo di geometria del layer.

  • Tramite regole: configurazioni multiple di simboli possono essere definite e applicate selettivamente in base a filtri con espressione e intervallo di scala. Maggiori dettagli su come fare in Rule-based rendering.

../../../_images/3d_view_properties.png

Fig. 16.39 Proprietà 3D di un layer puntuale

Attenzione

Preferisci la scheda Elevazione per i simboli di elevazione e le impostazioni del terreno.

Le proprietà relative all’elevazione e all’altitudine degli elementi (Blocco dell’Elevazione, Vincolo di Elevazione, Abilita Estrusione o Altezza) nella scheda Vista 3D ereditano i loro valori predefiniti dalla scheda Elevation properties del layer e devono essere preferibilmente impostate dalla scheda :guilabel:”Elevazione”.

Per migliorare le prestazioni, i dati dei layer vettoriali sono caricati in background, usando il multithreading, e resi in tasselli la cui dimensione può essere controllata dalla sezione Visualizzazione layer della scheda:

  • Numero livelli di zoom: determina quanto profondo sarà il quadrilatero. Per esempio, livello di zoom uno significa che ci sarà un solo tassello per l’intero layer. Tre livelli di zoom significa che ci saranno 16 tasselli a livello di foglia (ogni ulteriore livello di zoom moltiplica per 4). Il valore predefinito è 3 e il massimo è 8.

  • checkbox Mostra perimetri dei tasselli: particolarmente utile se ci sono problemi con i tasselli che non appaiono quando dovrebbero.

16.1.8. Proprietà Campi

sourceFields La scheda Campi fornisce informazioni sui campi relativi al layer e ti aiuta ad organizzarli.

Puoi rendere editable il layer usando toggleEditing Attiva/disattiva modalità modifica. A questo punto puoi modificarne la struttura usando i pulsanti newAttribute Nuovo campo e deleteAttribute Elimina campo.

Puoi rinominare i campi facendo doppio clic sul loro nome. Questa funzione è supportata solo per i fornitori di dati come PostgreSQL, Oracle, layer temporaneo e alcuni layer GDAL, a seconda della versione di GDAL.

Se è impostato nella sorgente dati o nelle forms properties, viene visualizzato anche l’alias del campo. Un alias è un nome di campo leggibile dall’uomo che puoi usare nel modulo delle geometrie o nella tabella degli attributi. Gli alias vengono salvati nel file di progetto.

Oltre ai campi contenuti nel dataset, virtual fields e Auxiliary Storage inclusi, la scheda Campi elenca anche i campi da qualsiasi joined layers. A seconda dell’origine del campo, gli viene applicato un colore di sfondo diverso.

Per ogni campo elencato, la finestra di dialogo elenca anche caratteristiche di sola lettura come il suo Tipo, Nome tipo, Lunghezza e Precisione.

A seconda della sorgente dati, puoi associare un commento a un campo, ad esempio al momento della sua creazione. Questa informazione viene recuperata e mostrata nella colonna Commento e viene poi visualizzata nel modulo della geometria quando si passa sopra l’etichetta del campo.

Nella colonna Configurazione, puoi impostare il comportamento del campo in determinate circostanze:

  • Non ricercabile: selezionare questa opzione se non vuoi che questo campo sia interrogato dal search locator bar

  • Non mostrare via WMS: selezione questa opzione se non vuoi visualizzare questo campo se il layer è servito come WMS dal server QGIS.

  • Non mostrare via WFS: seleziona questa opzione se non vuoi visualizzare questo campo se il layer è servito come WFS dal server QGIS.

../../../_images/fields_properties.png

Fig. 16.40 Proprietà scheda Campi

16.1.9. Proprietà Modulo Attributi

formView La scheda Modulo Attributi ti aiuta a impostare il modulo da visualizzare quando si creano nuove geometrie o si interrogano quelle esistenti. Puoi definire:

  • lo stile e il comportamento di ogni campo nel modulo delle geometrie o nella tabella degli attributi (etichetta, widget, vincoli….);

  • la struttura del modulo (personalizzata o autogenerata):

  • logica extra in Python per gestire l’interazione con i widget del modulo o dei campi.

In alto a destra della finestra di dialogo, puoi impostare se il modulo viene aperto in maniera predefinita quando si creano nuove funzioni. Puoi configurarlo per layer o globalmente con l’opzione Non aprire il modulo dopo la creazione di ogni geometria nel menu Impostazioni ► Opzioni ► Digitalizzazione.

16.1.9.1. Personalizzare un modulo per i tuoi dati

Per impostazione predefinita, quando clicchi su una geometria con lo strumento identifyInformazione elementi o apri la tabella degli attributi nella modalità vista modulo, QGIS visualizza un modulo base con widget predefiniti (generalmente caselle a tendina e caselle di testo — ogni campo è rappresentato su una riga dedicata dalla sua etichetta accanto al widget). Se sono configurate relazioni del layer, i campi dei layer di riferimento sono mostrati in una cornice incorporata nella parte inferiore del modulo, seguendo la stessa struttura di base.

Questa visualizzazione è il risultato del valore predefinito Genera automaticamente dell’impostazione Configurazione dell’editor degli attributi nella scheda Proprietà vettore ► Modulo attributi. Questa proprietà contiene tre diversi valori:

  • Genera automaticamente: mantiene la struttura di base di «una riga - un campo» per il modulo, ma permette di personalizzare ogni widget corrispondente.

  • Trascina e Rilascia Designer: oltre alla personalizzazione dei widget, la struttura del modulo può essere resa più complessa, ad esempio con widget incorporati in gruppi e schede.

  • Fornisci file ui: permette di utilizzare un file di Qt designer, quindi un modello potenzialmente più complesso e completo, come modulo per le geometrie.

Il modulo generato automaticamente

Quando l’opzione Genera automaticamente è attivata, il pannello Widgets disponibili ti mostra le liste di campi (del layer e delle sue relazioni) che verranno mostrati nel modulo. Seleziona un campo e puoi configurare il suo aspetto e il suo comportamento nel pannello di destra:

Trascina e Rilascia Designer

Trascina e Rilascia Designer consente di creare un modulo con diversi contenitori (schede o gruppi) per presentare i campi attributo o altri widget che non sono direttamente collegati a un campo particolare (come i widget HTML/QML o le azioni definite per il livello), come mostrato ad esempio in Fig. 16.41.

../../../_images/resulting_feature_form.png

Fig. 16.41 Modulo personalizzato con schede e gruppi distinti

  1. Scegli Crea maschera di inserimento dal menu a tendina Seleziona l’editor degli attributi. Questo abilita il pannello Disposizione del modulo accanto al pannello Widget disponibili, riempito con i campi esistenti. Il campo selezionato visualizzerà le sue properties in un terzo pannello.

  2. Seleziona i campi che non vuoi usare nel pannello Modulo Layout e premi il pulsante symbologyRemove per rimuoverli. Puoi anche invertire la selezione con il pulsante invertSelection Inverti selezione.

  3. Trascina e rilascia i campi dal primo pannello a quello Disposizione della maschera per aggiungerli nuovamente. Lo stesso campo può essere aggiunto più volte.

  4. Trascina e rilascia i campi con il pannello Disposizione della maschera per riordinare la disposizione.

  5. Aggiungi dei contenitori per associare i campi che appartengono alla stessa categoria e strutturare meglio il modulo.

    1. Il primo passo è utilizzare l’icona symbologyAdd Aggiungi una nuova scheda o un nuovo gruppo al layout del modulo. I campi e gli altri gruppi saranno visualizzati in essa.

    2. Quindi definisci le proprietà del contenitore, per esempio:

      • l” Etichetta: il titolo che sarà usato per il contenitore

      • il Tipo di scheda: può essere una Tabulazione o una Box di gruppo nella scheda (una casella di gruppo collassabile all’interno di una scheda o di un altro gruppo)

      • e il Numero di colonne in cui i campi inseriti dovrebbero essere distribuiti

      ../../../_images/attribute_editor_layout.png

      Fig. 16.42 Finestra di dialogo per creare contenitore con Disposizione dell’editore di attributi

      Puoi aggiornare successivamente queste e altre proprietà selezionando l’elemento e, dal terzo pannello:

      • nascondere o mostrare l’etichetta del contenitore

      • rinominare il contenitore

      • definire il numero di colonne

      • Inserire un’espressione che regoli la visibilità del contenitore. L’espressione verrà rivalutata ogni volta che il modulo cambia e la scheda o la casella di gruppo mostrata/nascosta

      • checkbox Mostra come casella di gruppo: converte una scheda in una casella di gruppo di livello superiore e viceversa

      • nel caso di una casella di gruppo, imposta se all’apertura del modulo deve essere visualizzata come :guilabel: Collassata per tutte gli elementi, o solo per quelli che corrispondono a un’espressione (Controllo collassato da un’espressione).

      • configurare l’aspetto Stile del contenitore, con proprietà personalizzate Colore di sfondo, colore dell’etichetta e proprietà del carattere

    3. Puoi creare e incorporare tutti i contenitori che vuoi premendo nuovamente l’icona |simbologyAdd| Aggiungi una nuova scheda o un nuovo gruppo al layout del modulo.

  6. Il passo successivo consiste nell’assegnare i campi pertinenti a ciascun contenitore, con un semplice trascinamento. Anche le caselle di gruppo e le schede possono essere spostate nello stesso modo.

  7. Customize the widget dei campi in uso

  8. Se il layer è coinvolto in una one or many to many relation, trascinae il nome della relazione dal pannello Widget disponibili al pannello Modulo Layout. Il modulo associato all’attributo del layer verrà incorporato nel punto scelto nel modulo del layer corrente. Come per gli altri elementi, selezionare l’etichetta della relazione per configurare alcune proprietà:

    • nascondi o mostra l’etichetta della relazione

    • mostra il pulsante di collegamento

    • mostra il pulsante di non-collegamento

  9. Se il layer ha una o più actions attivate per Layer o Elemento, le azioni saranno elencate sotto Azioni e potrai trascinarle come per gli altri campi. L’azione associata sarà incorporata nel punto scelto del modulo del layer corrente.

  10. Si può personalizzare ulteriormente il modulo aggiungendo uno o più widget da Altri widget (vedere altri_widget).

  11. Attiva le modifiche

  12. Apri il modulo degli attributi di un elemento (ad esempio usa lo strumento identify Informazioni elementi ) e ti dovrebbe apparire il nuovo modulo.

Altri Widgets

Il Trascina e Rilascia Designer offre una serie di widget che non sono collegati a un campo particolare. Possono essere utilizzati per migliorare l’aspetto del modulo o per visualizzare valori calcolati dinamicamente.

  • Widget HTML: incorpora una pagina HTML, il cui sorgente può contenere il risultato di espressioni calcolate dinamicamente.

  • Widget QML: incorpora una pagina QML; la fonte QML può contenere il risultato di espressioni calcolate dinamicamente.

Utilizzare file-ui personalizzato

L’opzione Fornisci file UI ti permette di usare finestre di dialogo complesse fatte con Qt-Designer. L’utilizzo di un file UI consente una grande libertà nella creazione di una finestra di dialogo. Nota che, per collegare gli oggetti grafici (casella di testo, casella combinata …) ai campi del livello, è necessario assegnare loro lo stesso nome.

Usa Modifica UI per definire il percorso del file da utilizzare.

I file UI possono anche essere ospitati su un server remoto. In questo caso, si fornisce l’URL del modulo invece del percorso del file in Modifica UI.

Troverai qualche esempio nella lezione Creating a new form del Manuale di Formazione di QGIS. Per informazioni più approfondite, vedi https://woostuff.wordpress.com/2011/09/05/qgis-tips-custom-feature-forms-with-python-logic/.

Migliora il tuo modulo con funzioni personalizzate

I moduli QGIS possono avere una funzione Python chiamata quando viene aperta la finestra di dialogo. Usa questa funzione per aggiungere ulteriori comandi alle tue finestre di dialogo. Il codice del modulo può essere specificato in tre modi diversi:

  • Carica dall'ambiente: utilizza una funzione, ad esempio in startup.py` o da un plugin installato.

  • caricare da un file esterno: un selezionatore di file ti permetterà di selezionare un file Python dal tuo filesystem o di inserire un URL per un file remoto.

  • Fornisci il codice in questa finestra: apparirà un editor Python dove puoi digitare direttamente la funzione da usare.

In tutti i casi devi inserire il nome della funzione che verrà chiamata (open nell’esempio sotto).

Un esempio è (nel modulo MyForms.py):

def open(dialog,layer,feature):
    geom = feature.geometry()
    control = dialog.findChild(QWidget,"My line edit")

Riferimento in Python Init Function in questo modo: open

16.1.9.2. Configurare il comportamento dei campi

La parte principale della scheda Modulo Attributi ti aiuta a impostare il tipo di widget utilizzato per riempire o visualizzare i valori del campo, nella tabella degli attributi o nel modulo geometrie: puoi definire come l’utente interagisce con ogni campo e i valori o la gamma di valori che possono essere aggiunti a ciascuno.

../../../_images/edit_widgets_dialog.png

Fig. 16.43 Finestra di dialogo per modificare un campo

Impostazioni comuni

Indipendentemente dal tipo di widget applicato al campo, ci sono alcune proprietà comuni che puoi impostare per controllare se e come un campo può essere modificato.

Widget Visualizza

Disponibile solo per la modalità di progettazione Drag and drop, questo gruppo consente di configurare l’aspetto del widget assegnato al campo:

  • Mostra etichetta: indica se il nome del campo deve essere visualizzato nel modulo.

  • Override label color: applies specific color to the field’s label

  • Override label font: applies specific font properties (bold, italic, underline, strikethrough, or font family) to the field’s label

Opzioni generali
  • Alias: un nome comprensibile da usare per i campi. Gli alias saranno visualizzati nel modulo geometrie, nella tabella degli attributi o nel pannello Visualizzatore risultati. Può anche essere usato come sostituto del nome del campo in Costruttore di espressioni 1, facilitando la comprensione delle espressioni e delle verifiche. Gli alias sono salvati nel file di progetto.

  • Commento: visualizza il commento del campo come mostrato nella scheda Campi, in uno stato di sola lettura. Questa informazione è mostrata come suggerimento quando si passa il mouse sopra l’etichetta del campo in un modulo di elemento.

  • checkbox Modificabile: deseleziona questa opzione per impostare il campo in sola lettura (non modificabile manualmente) anche quando il layer è in modalità di modifica. Nota che il controllo di questa impostazione non prevale su qualsiasi altra limitazione di modifica da parte del fornitore dati.

  • checkbox Riutilizza l’ultimo valore inserito: ricorda l’ultimo valore inserito in questo campo e lo usa come predefinito per il prossimo elemento da modificare nel layer.

  • checkbox Etichetta in cima: posiziona il nome del campo sopra o accanto al widget nel modulo delle geometrie.

Valori predefiniti
  • Valore predefinito: per nuove geometrie, popola automaticamente il campo con un valore predefinito o un valore expression-based one. Per esempio, puoi:

    • utilizzare $x, $length, $area per popolare automaticamente un campo con la coordinata X dell’elemento, la lunghezza, l’area o qualsiasi informazione geometrica alla sua creazione;

    • incrementare un campo di 1 per ogni nuova geometria usando maximum("field")+1;

    • salvare la data e l’ora di creazione della geometria usando now();

    • usare variables nelle espressioni, rendendo più facile, ad esempio, inserire il nome dell’operatore (@user_full_name`), il percorso del file del progetto (@project_path), ….

    Un’anteprima del conseguente valore predefinito viene visualizzata nella parte inferiore del widget.

    Nota

    L’opzione Valore predefinito ignora i valori in ogni altro campo della geometria creata, quindi non sarà possibile utilizzare un’espressione che combina uno qualsiasi di questi valori, ad esempio utilizzando un’espressione come concat(field1, field2) potrebbe non funzionare.

  • checkbox Applica valore predefinito all’aggiornamento: ogni volta che l’attributo della geometria o la geometria viene modificata, il valore predefinito viene ricalcolato. Questo potrebbe essere utile per salvare valori come modificati dall” ultimo utente, l’ultima volta che è stato modificato…..

Vincoli

Puoi vincolare il valore da inserire nel campo. Questo vincolo può essere:

  • checkbox Non nullo: richiede che l’utente fornisca un valore;

  • checkbox Univoco: per garantire che il valore inserito sia unico in ogni campo;

  • basato su una espressione personalizzata: ad esempio not regexp_match(col0,'[^A-Za-z]') assicurerà che il valore del campo col0 abbia solo lettere dell’alfabeto. Una breve descrizione può essere aggiunta per aiutarti a ricordare il vincolo.

Ogni volta che un valore viene aggiunto o modificato in un campo, viene sottoposto ai vincoli esistenti e:

  • se soddisfa tutti i requisiti, un segno di spunta verde viene mostrato accanto al campo nel modulo;

  • se non soddisfa tutti i requisiti, allora il campo è colorato in giallo o arancione e una croce corrispondente viene visualizzata accanto al widget. Puoi passare il mouse sulla croce per ricordare quali vincoli sono applicati al campo e aggiustare il valore:

    • Una croce gialla appare quando il vincolo non rispettato è un vincolo non applicato (vincolo debole) e non impedisce di salvare le modifiche con i valori «sbagliati»;

    • Una croce arancione non può essere ignorata e non ti consente di salvare le modifiche finché non si soddisfano i vincoli. Appare quando l’opzione checkbox Fai rispettare il vincolo espressione è selezionata (vincolo assoluto).

Gestione widget

In base al tipo di campo, QGIS determina e assegna automaticamente un tipo di widget predefinito. È quindi possibile sostituire il widget con qualsiasi altro compatibile con il tipo di campo. I widget disponibili sono:

  • Casella di controllo: Visualizza una casella di controllo il cui stato definisce il valore da inserire.

  • Classificazione: Disponibile solo quando un categorized symbology è applicato al layer, visualizza una casella combinata con i valori delle classi.

  • Colore: Visualizza un color widget che permette di selezionare un colore; il valore del colore è memorizzato come notazione html nella tabella degli attributi.

  • Data/ora: Visualizza un campo che può aprire un widget di calendario per inserire una data, un tempo o entrambi. Il tipo di colonna deve essere testo. Puoi selezionare un formato personalizzato, aprire un calendario, ecc.

  • Numerazione: Apre una casella combinata con valori predefiniti provenienti dal database. Questo è attualmente supportato solo da PostgreSQL, per campi di tipo enum.

  • Allegato: Utilizza una finestra di dialogo «Apri file» per memorizzare il percorso del file in modo relativo o assoluto. Può essere utilizzato per visualizzare un collegamento ipertestuale (al percorso del documento), un’immagine o una pagina web. L’utente può anche configurare un external storage system per recuperare/memorizzare le risorse.

  • Nascosto: rende invisibile la colonna, quindi non potrai vederne il contenuto.

  • Chiave/Valore: Visualizza una tabella a due colonne per memorizzare insiemi di coppie chiave/valore in un unico campo. Questo è attualmente supportato da PostgreSQL, per campi di tipo hstore.

  • Vista JSON: Visualizza i dati JSON in una modifica del testo evidenziata dalla sintassi o in una vista ad albero. Questo widget è attualmente di sola lettura. Sono disponibili diverse opzioni per modificare la modalità di visualizzazione dei dati. “Vista predefinita” specifica se il widget deve apparire in modalità testo o albero. “Formato JSON” ha tre opzioni che riguardano solo la visualizzazione ad albero:

    • Indentato: Visualizza i dati in una forma leggibile con linee nuove e quattro caratteri di spazio per l’indentazione.

    • Compatto: Visualizza i dati in una stringa ottimizzata di una sola linea, senza newline o spazi.

    • Disabilitato: Visualizza i dati così come provengono dal provider.

  • Lista: Visualizza una tabella a colonna singola per aggiungere valori diversi all’interno di un singolo campo. Questo è attualmente supportato da PostgreSQL, per campi di tipo array.

  • Intervallo: ti permette di impostare dei valori di un preciso intervallo numerico. Il widget può apparire come un cursore o come un campo modificabile.

  • Relazione di riferimento: Questo è il widget predefinito assegnato al campo di riferimento (cioè la chiave esterna nel layer figlio) quando è impostata una relation. Fornisce un accesso diretto al modulo dell’elemento padre che a sua volta incorpora la lista e il modulo dei suoi figli.

  • Modifica testo (impostazione predefinita): consente di aprire un campo di modifica del testo che consente di utilizzare testi semplici testi o a più righe. Se scegli più righe puoi anche scegliere contenuto html.

  • Valori univoci: puoi selezionare uno dei valori già utilizzati nella tabella degli attributi. Se è attivato “Modifica”, viene visualizzata una scelta in linea con il supporto di autocompletamento, altrimenti viene visualizzato un menu a tendina.

  • Generatore UUID: genera un campo UUID (Universally Unique Idetifiers) di sola lettura, se il campo è vuoto.

  • Mappa valore: un menu a tendina con elementi predefiniti. Il valore viene memorizzato nell’attributo, la descrizione viene visualizzata nel menu a tendina. Puoi definire i valori manualmente oppure caricarli da un layer o da un file CSV.

  • Relazione valore: offre valori da una tabella correlata in caselle combinate. Puoi selezionare layer, colonna chiave e colonna valore. Sono disponibili diverse opzioni per modificare i comportamenti standard: consentire il valore nullo, l’ordine per valore, consentire più selezioni e utilizzare l’autocompletamento. Le maschere visualizzeranno un elenco a discesa o un elemento di modifica in linea quando la casella di controllo autocompletamento è abilitata.

    Se un layer memorizzato in PostgreSQL, GeoPackage o SpatiaLite è configurato per utilizzare un widget di relazione di valore, ma il layer richiesto non è già caricato nel progetto, QGIS cercherà automaticamente il layer nello stesso database/connessione.

Suggerimento

Percorso relativo nel widget allegato

Se il percorso selezionato con il browser file si trova nella stessa directory del file di progetto .qgs o in cartella sottostante, i percorsi vengono convertiti in percorsi relativi. Ciò aumenta la portabilità di un progetto .qgs con le informazioni multimediali allegate.

16.1.10. Proprietà Join

join La scheda Join ti permette di associare elementi del layer corrente (chiamato Target layer) a elementi di un altro layer vettoriale caricato (o tabella). L’unione è basata su un attributo che è condiviso dai layer. I layer possono essere senza geometria (tabelle) oppure no, ma il loro attributo di unione deve essere dello stesso tipo.

Per creare un join:

  1. Fai clic sul pulsante symbologyAdd Aggiungi nuova unione. Appare la finestra di dialogo Aggiungi Vettore da Unire.

  2. Seleziona il Vettore di join che vuoi collegare con il layer vettoriale di destinazione

  3. Specifica il Campo unione e il Campo destinazione che sono comuni sia al layer di unione che a quello di destinazione

  4. Premi OK e un riassunto dei parametri selezionati viene aggiunto al pannello Join.

../../../_images/join_attributes.png

Fig. 16.44 Unisci una tabella di attributi ad un layer vettoriale

I passi precedenti creeranno un’unione, dove TUTTI gli attributi del primo elemento corrispondente nel layer di unione sono aggiunti all’elemento del layer di destinazione. QGIS fornisce più opzioni per modificare l’unione:

  • checkbox Cache unione layer in memoria: permette di mettere in cache in memoria i valori (senza geometrie) del layer unito per velocizzare le ricerche.

  • unchecked Crea un indice nel campo unito

  • unchecked Modulo Dinamico: ti aiuta a sincronizzare i campi di unione al volo, secondo il Campo destinazione. In questo modo, anche i vincoli per i campi di unione sono aggiornati correttamente. Si noti che è disattivato per impostazione predefinita perché può richiedere molto tempo se si hanno molte funzioni o una miriade di join.

  • Se il layer di destinazione è modificabile, allora alcune icone saranno visualizzate nella tabella degli attributi accanto ai campi, per informare sul loro stato:

    • joinNotEditable: il layer di join non è configurato per essere modificabile. Se vuoi essere in grado di modificare le geometrie in join dalla tabella degli attributi di destinazione, allora devi spuntare l’opzione checkbox Layer di unione modificabile.

    • joinedLayerNotEditable: il layer di join è ben configurato per essere modificabile, ma il suo stato attuale è in sola lettura.

    • joinHasNotUpsertOnEdit: il layer di unione è modificabile, ma i meccanismi di sincronizzazione non sono attivati. Se vuoi aggiungere automaticamente un elemento nel layer di unione quando un elemento viene creato nel layer di destinazione, allora devi selezionare l’opzione checkbox Inserimento in modifica. Simmetricamente, l’opzione checkbox Elimina a cascata può essere attivata se vuoi eliminare automaticamente le caratteristiche di unione.

  • unchecked Campi uniti: invece di aggiungere tutti i campi del layer unito, puoi specificare un sottoinsieme.

  • unchecked Prefisso del nome del campo personalizzato per i campi uniti, per evitare la collisione dei nomi

QGIS attualmente supporta l’unione di formati di tabelle non spaziali supportati da GDAL (ad esempio, CSV, DBF ed Excel), testo delimitato e i provider PostgreSQL.

16.1.11. Proprietà Dati Ausiliari

Il modo consueto per personalizzare lo stile e l’etichettatura è quello di utilizzare proprietà definite dai dati come descritto in Impostazione Sovrascrittura definita dai dati. Tuttavia, potrebbe non essere possibile se i dati sottostanti sono di sola lettura. Inoltre, la configurazione di queste proprietà definite dai dati può richiedere molto tempo o non essere auspicabile! Per esempio, se si desidera utilizzare completamente gli strumenti della mappa con Barra delle etichette, è necessario aggiungere e configurare più di 20 campi nella sorgente dati originale (posizioni X e Y, angolo di rotazione, stile del carattere, colore e così via).

Il meccanismo Dati Ausiliari fornisce la soluzione a queste limitazioni e complesse configurazioni. I campi ausiliari sono un modo alternativo per gestire e memorizzare automaticamente queste proprietà definite dai dati (etichette, diagrammi, simbologia….) in un database SQLite grazie a collegamenti modificabili. Questo permette di memorizzare proprietà per layer che non sono modificabili.

Una scheda è disponibile nella finestra di dialogo delle proprietà del layer vettoriale per gestire la memoria ausiliaria:

../../../_images/auxiliary_storage_tab.png

Fig. 16.45 Scheda Dati Ausiliari

16.1.11.1. Etichettatura

Considerando che l’origine dati può essere personalizzata grazie alle proprietà definite dai dati senza essere modificabile, gli strumenti di etichettatura della mappa descritti in Barra delle etichette sono sempre disponibili non appena l’etichettatura viene attivata.

In realtà, il sistema di archiviazione ausiliario ha bisogno di un layer ausiliario per memorizzare queste proprietà in un database SQLite (vedi Database Dati Ausiliari). Il suo processo di creazione viene eseguito la prima volta che si clicca sulla mappa mentre uno strumento di etichettatura della mappa è attualmente attivato. Poi, viene visualizzata una finestra che permette di selezionare la chiave primaria da utilizzare per l’unione (per assicurarsi che le geometrie siano univocamente identificate):

../../../_images/auxiliary_storage_key.png

Fig. 16.46 Finestra di dialogo Layer Ausiliario

Non appena viene configurato un layer ausiliario come fonte di dati corrente, puoi recuperare le sue informazioni nella scheda:

../../../_images/auxiliary_storage_tabkey.png

Fig. 16.47 Chiave layer ausiliario

Il layer ausiliario ha ora queste caratteristiche:

  • la chiave primaria è ID,

  • ci sono 0 geometrie che utilizzano un campo ausiliario,

  • ci sono 0 campi ausiliari.

Ora che il layer ausiliario è stato creato, puoi modificare le etichette del layer. Clicca su un’etichetta mentre è attivato lo strumento changeLabelProperties Cambia Proprietà Etichetta strumenti mappa, poi puoi aggiornare le proprietà di stile come dimensioni, colori e così via. Le corrispondenti proprietà definite dai dati vengono create e possono essere recuperate:

../../../_images/auxiliary_storage_fields.png

Fig. 16.48 Campi ausiliari

Come puoi vedere nella figura sopra, 21 campi vengono automaticamente creati e configurati per l’etichettatura. Per esempio, il tipo di campo ausiliario FontStyle è uno String ed è chiamato labeling_fontstyle nel database SQLite sottostante. C’è anche la geometria 1 che attualmente utilizza questi campi ausiliari.

Notare che l’icona dataDefineOn è visualizzata nella scheda Etichette proprietà che indica che le opzioni di sovrapposizione dei dati definiti sono impostate correttamente:

../../../_images/auxiliary_storage_dd.png

Fig. 16.49 Proprietà definite dai dati create automaticamente

Altrimenti, c’è un altro modo per creare un campo ausiliario per una specifica proprietà grazie al pulsante dataDefine Sovrascrittura definita dai dati. Cliccando su Memorizza i dati nel progetto, viene creato automaticamente un campo ausiliario per il campo Opacità. Se clicchi su questo pulsante e il livello ausiliario non è ancora stato creato, viene prima visualizzata una finestra (Fig. 16.46) per selezionare la chiave primaria da usare per l’unione.

16.1.11.2. Simbologia

Come il metodo sopra descritto per la personalizzazione delle etichette, i campi ausiliari possono essere usati anche per stilizzare simboli e diagrammi. Per fare questo, clicca su dataDefine Sovrascrittura definita dai dati e seleziona Salva Dati nel Progetto per una proprietà specifica. Per esempio, il campo Colore di riempimento:

../../../_images/auxiliary_storage_symbol.png

Fig. 16.50 Menu definizione proprietà per i simboli

Ci sono diversi attributi per ogni simbolo (es. stile di riempimento, colore di riempimento, colore di riempimento, colore del tratto, ecc….), quindi ogni campo ausiliario che rappresenta un attributo richiede un nome unico per evitare conflitti. Dopo aver selezionato Salva Dati nel Progetto, si apre una finestra che visualizza Tipo del campo e richiede di inserire un nome univoco per il campo ausiliario. Ad esempio, quando si crea un campo ausiliario Colore di riempimento si apre la seguente finestra:

../../../_images/auxiliary_storage_symbol_name.png

Fig. 16.51 Nome del campo ausiliario di un simbolo

Una volta creato, il campo ausiliario può essere richiamato nella scheda dati ausiliari:

../../../_images/auxiliary_storage_symbol_field.png

Fig. 16.52 Simbolo campo ausiliario

16.1.11.3. Tabella degli attributi e widget

I campi ausiliari possono essere modificati utilizzando la attribute table. Tuttavia, non tutti i campi ausiliari sono inizialmente visibili nella tabella degli attributi.

I campi ausiliari che rappresentano gli attributi della simbologia, dell’etichettatura, dell’aspetto o dei diagrammi di un layer appariranno automaticamente nella tabella degli attributi. L’eccezione sono gli attributi che possono essere modificati usando la Label Toolbar che sono nascosti per impostazione predefinita. I campi ausiliari che rappresentano un Colore hanno un widget Colore impostato di default, mentre i campi ausiliari sono predefiniti dal widget Testo Modifica.

I campi ausiliari che rappresentano gli attributi che possono essere modificati utilizzando la barra degli strumenti Label toolbar per impostazione predefinita sono Nascosti nella tabella degli attributi. Per rendere visibile un campo, aprire la scheda Attribute Form properties tab e cambiare il valore di un campo ausiliario Tipo Widget da Nascosto ad un altro valore pertinente. Per esempio, cambiare auxiliary_storage_labeling_size in Modifica testo o cambiare auxiliary_storage_labeling_color nel widget Colore. Questi campi saranno ora visibili nella tabella degli attributi.

I campi ausiliari nella tabella degli attributi appariranno come nell” immagine seguente:

../../../_images/auxiliary_storage_widgets.png

Fig. 16.53 Modulo con campi ausiliari

16.1.11.4. Gestione

Il menu Dati Ausiliari permette di gestire i campi ausiliari:

../../../_images/auxiliary_storage_actions.png

Fig. 16.54 Gestione layer ausiliario

La prima voce Crea in questo caso è disabilitata perché il layer ausiliario è stato già creato. Ma nel caso di un lavoro nuovo, puoi usare questa azione per creare un layer ausiliario. Come spiegato in Etichettatura, sarà necessaria una chiave primaria.

L’azione Cancella permette di mantenere tutti i campi ausiliari, ma di rimuoverne il contenuto. In questo modo, il numero di funzioni che utilizzano questi campi scenderà a 0.

L’azione Elimina rimuove completamente il layer ausiliario. In altre parole, la tabella corrispondente viene cancellata dal database SQLite sottostante e la personalizzazione delle proprietà viene persa.

Infine, l’azione Esporta permette di salvare il livello ausiliario come un new vector layer. Si noti che le geometrie non sono memorizzate in una memoria ausiliaria. Tuttavia, in questo caso, anche le geometrie vengono esportate dall’origine dati originale.

16.1.11.5. Database Dati Ausiliari

Quando salvi il tuo progetto con il formato .qgs, il database SQLite utilizzato per i dati ausiliari viene salvato nello stesso posto ma con l’estensione .qgd.

Per comodità, un archivio invece può essere utilizzato invece grazie al formato .qgz. In questo caso, i file .qgd e .qgs sono entrambi incorporati nell’archivio.

16.1.12. Proprietà Azioni

La scheda action ti offre la possibilità di creare azioni sulla base degli attributi associati ai singoli elementi del vettore. Potrai cosi creare un grande numero di azioni, per esempio, avviare un programma con argomenti come gli attributi di un vettore o inviare parametri a una applicazione di rete.

../../../_images/action_dialog.png

Fig. 16.55 Panoramica della finestra di dialogo Azioni con esempi

Le azioni sono utili quando vuoi eseguire frequentemente un’applicazione esterna o visualizzare una pagina web in base a uno o più valori del layer vettoriale. Sono di diversi tipi e possono essere utilizzate in questo modo:

  • Le azioni Generic, Mac, Windows e Unix avviano un processo esterno.

  • Le azioni Python eseguono un’espressione Python.

  • Le azioni Generico e Python sono visibili ovunque.

  • Le azioni Mac, Windows e Unix sono visibili solo sulla rispettiva piattaforma (cioè, si possono definire tre azioni «Edit» per aprire un editor e gli utenti possono vedere ed eseguire solo l’azione «Edit» per la loro piattaforma per eseguire l’editor).

  • Apri URL: Utilizza una richiesta HTTP GET per aprire un URL specificato.

  • Invia URL (codificato in urlen o JSON): Come l’azione Apri URL, ma utilizzando una richiesta HTTP POST. I dati vengono inviati a un URL, utilizzando «application/x-www-form-urlencoded» o «application/json» se il corpo è un JSON valido.

    Un esempio di richiesta di azione potrebbe essere:

    http://localhost:8000?/[% url_encode(map('file', 'index.php')) %]
    
  • Invia URL (multipart): Come l’azione Apri URL, ma utilizzando una richiesta HTTP POST. I dati vengono inviati a un URL, utilizzando «multipart/form-data».

Ci sono diversi esempi inclusi nella finestra di dialogo. Puoi caricarli cliccando su Crea Azioni Predefinite. Per modificare uno qualsiasi degli esempi, fare doppio clic sulla sua riga. Un esempio è l’esecuzione di una ricerca basata su un valore di un attributo. Questo concetto è usato nella seguente discussione.

checkbox Mostra nella tabella degli attributi permette di visualizzare nella finestra di dialogo della tabella degli attributi le azioni selezionate, sia come Combo Box o come Pulsanti separati (vedi Configurare le colonne).

16.1.12.1. Definire le azioni

Per definire un’azione di attributo, apri la finestra di dialogo Proprietà e fai clic sulla scheda Azioni. Nella scheda Azioni fai clic su symbologyAdd Aggiunge una nuova azione per aprire la finestra di dialogo Aggiungi nuova azione.

Seleziona l’azione Type e fornisci un nome descrittivo per l’azione. L’azione stessa deve contenere il nome dell’applicazione che verrà eseguita quando l’azione viene invocata. Puoi aggiungere uno o più valori di campi attributo come argomenti dell’applicazione. Quando l’azione viene invocata, qualsiasi serie di caratteri che iniziano con un % seguito dal nome di un campo verrà sostituito dal valore di quel campo. I caratteri speciali %% saranno sostituiti dal valore del campo selezionato dai risultati dell’identificazione o dalla tabella degli attributi (vedere Uso delle azioni). Le virgolette doppie possono essere usate per raggruppare il testo in un singolo argomento del programma, dello script o del comando. Le virgolette doppie vengono ignorate se precedute da una barra rovesciata.

L’opzione Ambiti Azione consente di definire dove l’azione deve essere disponibile. Sono disponibili le seguenti scelte:

  1. Campo: l’azione è disponibile quando si fa clic con il pulsante destro del mouse sulla cella della tabella degli attributi, nel modulo degli elementi e nel pulsante di azione predefinito della barra degli strumenti principale.

  2. Elemento: l’azione è disponibile quando si fa clic con il pulsante destro del mouse sulla cella della tabella degli attributi.

  3. Mappa: l’azione è disponibile nel pulsante azione principale nella barra degli strumenti.

  4. Modulo: l’azione è disponibile solo in uno strumento modulo progettato utilizzando la modalità drag-and-drop.

  5. L’azione Layer: è disponibile nel pulsante azione della barra degli strumenti della tabella degli attributi. Si noti che questo tipo di azione coinvolge l’intero layer e non i singoli elementi.

Se sono presenti nomi di campi che possono essere interpretati come sotto-stringhe di altri nomi di campi (ad es. col1 e col10) devi racchiudere il nome (e il carattere %) tra parentesi quadre (es. [%col10]). Questo impedirà che il nome di campo %col10 possa essere confuso con %col1 con uno 0 alla fine. Le virgolette saranno rimosse da QGIS mano che inserirai i valori del campo. Se vuoi che i campi sostituiti vengano racchiusi entro parentesi quadre, aggiungi una seconda coppia di parentesi quadre: [[%col10]].

La finestra di dialogo Informazioni Risultati che compare quando usi lo strumento Informazioni elementi ha una voce (Derivato) che contiene informazioni che dipendono dal tipo di vettore interrogato. Puoi accedere ai valori di questa voce in modo simile a come accedi ad altri campi della tabella attributi anteponendo al nome del campo (Derivato). Per esempio un vettore di punti ha due campi, X e Y, e puoi usare il loro valore nell’azione con l’espressione %(Derivato).X e %(Derivato).Y. Gli attributi derivati sono disponibili solo nella finestra Informazioni Risultati e non nella finestra Tabella Attributi.

Due esempi di azioni sono di seguito mostrati:

  • konqueror https://www.google.com/search?q=%nam

  • konqueror https://www.google.com/search?q=%%

Nel primo esempio, verrà lanciato il browser konqueror che aprirà un URL. L’URL crea una ricerca Google sul valore del campo nam nel vettore. Il programma o lo script richiamato dall’azione deve essere nel path delle variabili d’ambiente altrimenti dovrai specificare il percorso completo del programma. Il primo esempio infatti è accessibile anche con /opt/kde3/bin/konqueror http://www.google.com/search?q=%nam. In questo modo sei sicuro che l’applicazione konqueror verrà eseguita quando si richiama l’azione..

Nel secondo esempio viene usata la notazione %% che non si basa su un particolare campo per il suo valore. Quando richiami l’azione, il %% sarà rimpiazzato dal valore del campo selezionato nella finestra Informazioni Risultati o nella Tabella Attributi.

16.1.12.2. Uso delle azioni

QGIS offre molti modi per eseguire le azioni che hai attivato su un layer. A seconda delle loro impostazioni, possono essere disponibili:

  • nel menu a discesa di actionRun Avvia azione sull’elemento dalla finestra di dialogo Barra degli strumenti relativa agli attributi o dalla Tabella Attributi;

  • quando si clicca con il tasto destro del mouse su una geometria con lo strumento identify Informazioni Elementi (vedi Informazione Elementi per maggiori informazioni);

  • dal pannello Informazioni Risultati, sotto la sezione Azioni;

  • come elementi di una colonna Azioni nella finestra di dialogo Tabella Attributi.

Se stai richiamando un’azione che usa l’annotazione %%, fai click con il tasto destro sul valore del campo nella finestra Informazioni Risultati oppure dalla finestra Tabella Attributi e scegli l’applicazione o lo script da assegnare.

In questo altro esempio viene mostrato come estrarre dati da un vettore per inserirli in un file usando il terminale e il comando echo (quindi funzionerà su nix e forse su osx). Il vettore in questione ha i seguenti campi nella tabella attributi: nome della specie taxon_name, latitudine lat e longitudine long. Vuoi eseguire una selezione spaziale delle specie (taxon) presenti in determinate posizioni, esportando i risultati in un file di testo (evidenziate in giallo sulla mappa di QGIS ). Ecco l’azione giusta per questo scopo:

bash -c "echo \"%taxon_name %lat %long\" >> /tmp/species_localities.txt"

Selezionando solo alcune posizioni, l’esecuzione dell’azione precedente genera un file di output fatto così:

Acacia mearnsii -34.0800000000 150.0800000000
Acacia mearnsii -34.9000000000 150.1200000000
Acacia mearnsii -35.2200000000 149.9300000000
Acacia mearnsii -32.2700000000 150.4100000000

Come esercizio, possiamo creare un’azione che faccia una ricerca con Google sul livello Lakes. Per prima cosa, dobbiamo determinare l’URL necessario per eseguire una ricerca su una parola chiave. Questo si può fare facilmente andando su Google e facendo una semplice ricerca, poi prendendo l’URL dalla barra degli indirizzi del browser. Da questo piccolo sforzo, vediamo che il formato è https://www.google.com/search?q=QGIS, dove QGIS è il termine di ricerca. Armati di queste informazioni, possiamo procedere:

  1. Assicurati di aver caricato il vettore lakes.

  2. Apri la finestra di dialogo Proprietà layer facendo doppio clic sul vettore o cliccandoci sopra con il tasto destro del mouse e scegliendo Proprietà dal menu contestuale.

  3. Clic sulla scheda Azioni.

  4. Clic symbologyAdd Aggiungi nuova azione.

  5. Scegli il tipo di azione Apri URL,

  6. Inserisci un nome descrittivo per l’azione, ad esempio Ricerca Google.

  7. Inoltre puoi aggiungere una Descrizione breve o anche una Icona.

  8. Scegliere l’opzione Ambiti Azione. Vedere Definire le azioni per ulteriori informazioni. Per questo esempio, lascia le impostazioni predefinite.

  9. Per l’azione, aggiungi l’URL utilizzato per effettuare una ricerca su Google, fino al termine di ricerca non incluso: https://www.google.com/search?q=.

  10. Il testo del campo :guilabel: Azione dovrebbe ora apparire come segue:

    https://www.google.com/search?q=
    
  11. Clicca sul menu a tendina che contiene i nomi dei campi del vettore lakes. E” posizionato immediatamente a sinistra del pulsante Inserisci.

  12. Dalla casella a discesa, seleziona NAMES e fai clic su Insert.

  13. Il testo della tua azione ora appare come segue:

    https://www.google.com/search?q=[%NAMES%]
    
  14. Per concludere e aggiungere l’azione, clicca sul pulsante OK.

    ../../../_images/add_action_edit.png

    Fig. 16.56 Esempio finestra di dialogo di definizione di un azione

Questo completa l’azione ed è pronta per l’uso.

Chiudi la finestra di dialogo Proprietà Layer e ingrandisci un’area di interesse. Assicurati che il layer lakes sia attivo e identifica un lago. Nel riquadro dei risultati vedrai ora che la tua azione è visibile:

../../../_images/action_identifyaction.png

Fig. 16.57 Seleziona un elemento e scegli un’azione

Quando facciamo clic sull’azione, si apre il nostro browser predefinito e si naviga verso l’URL https://www.google.com/search?q=Tustumena. È anche possibile aggiungere altri campi attributo all’azione. Pertanto, si può aggiungere un + alla fine del testo dell’azione, selezionare un altro campo e cliccare su Inserisci. In questo esempio, non c’è nessun altro campo disponibile che abbia senso cercare.

Puoi definire più di un’azione per ogni vettore, ognuna delle quali verrà mostrata nella finestra di dialogo Informazioni Risultati.

Puoi anche richiamare le azioni dalla tabella degli attributi selezionando una riga e cliccando col tasto destro, allora puoi scegliere un’azione dal menu a tendina.

Puoi creare tantissimi tipi di azione. Per esempio se hai un vettore di punti che fa riferimento alle posizioni dove sono state scattate foto o immagini, insieme al nome stesso del file, puoi creare un’azione per avviare un programma che visualizzerà l’immagine. Puoi usare le azioni anche per lanciare report sul web per uno o più campi della tabella degli attributi, definendole allo stesso modo dell’esempio per la ricerca con Google.

Ci sono esempi anche molto più complicati, per esempio usando le azioni Python.

Di solito, quando creiamo un’azione per aprire un file con un’applicazione esterna, possiamo usare percorsi assoluti, o eventualmente relativi. Nel secondo caso, il percorso è relativo alla posizione del file eseguibile del programma esterno. Ma cosa succede se abbiamo bisogno di usare percorsi relativi, relativi al layer selezionato (uno layer basato su file, come Shapefile o SpatiaLite)? Il codice seguente servirà allo scopo:

command = "firefox"
imagerelpath = "images_test/test_image.jpg"
layer = qgis.utils.iface.activeLayer()
import os.path
layerpath = layer.source() if layer.providerType() == 'ogr'
  else (qgis.core.QgsDataSourceURI(layer.source()).database()
    if layer.providerType() == 'spatialite' else None)
path = os.path.dirname(str(layerpath))
image = os.path.join(path,imagerelpath)
import subprocess
subprocess.Popen( [command, image ] )

Ricordati che l’azione è del tipo Python, quindi devi cambiare le variabili command e imagerelpath.

E se il percorso relativo deve essere relativo al file di progetto (salvato)? Il codice per l’azione Python diventa:

command = "firefox"
imagerelpath = "images_test/test_image.jpg"
projectpath = qgis.core.QgsProject.instance().fileName()
import os.path
path = os.path.dirname(str(projectpath)) if projectpath != '' else None
image = os.path.join(path, imagerelpath)
import subprocess
subprocess.Popen( [command, image ] )

Un altro esempio di azione python è quello che ti permette di aggiungere nuovi layer al progetto. In questo esempio aggiungeremo sia un vettore che un raster. Il nome dei file da aggiungere al progetto e il nome da assegnare ai layer è specificato dai dati (filename e layername sono nomi di colonne della tabella dagli attributi del vettore dove l’azione è stata creata):

qgis.utils.iface.addVectorLayer('/yourpath/[% "filename" %].shp',
  '[% "layername" %]', 'ogr')

Per aggiungere un raster (in questo caso un’immagine TIF), diventa:

qgis.utils.iface.addRasterLayer('/yourpath/[% "filename" %].tif',
  '[% "layername" %]')

16.1.13. Proprietà Suggerimenti

display La scheda Visualizza ti aiuta a configurare i campi da utilizzare per l’identificazione degli elementi:

  • Il Visualizza Nome: basato su un campo o su un espressione. Questo è:

    • l’etichetta mostrata sopra le informazioni sull’elemento Identify tool results

    • il campo usato nella locator bar quando si cercano elementi in tutti i layer

    • l’identificatore dell’elemento nella tabella degli attributi form view

    • l’identificatore dell’elemento quando la mappa o il layout viene esportato in un formato di output a più livelli come GeoPDF

    • geometria del layer attivo con l’icona mapTips Mostra suggerimenti mappa. Applicabile quando HTML Map Tip è impostato a no.

  • HTML Map Tip è stato creato appositamente per i suggerimenti della mappa: si tratta di un testo HTML più complesso e completo che mescola campi, espressioni e tag html (multilinea, font, immagini, immagini, collegamenti ipertestuali…..).

../../../_images/display_html.png

Fig. 16.58 Codice HTML per suggerimento mappa

Per attivare Suggerimenti mappa, seleziona l’opzione di menu Visualizza ► Mostra Suggerimenti mappa o fai clic sull’icona mapTips Mostra Suggerimenti mappa. Suggerimenti mappa è una funzionalità di cross-session che, una volta attivata, rimane attiva e si applica a qualsiasi layer impostato in qualsiasi progetto, anche nelle future sessioni di QGIS finché non viene disattivato.

../../../_images/map_tip.png

Fig. 16.59 Suggerimento mappa realizzato con codice HTML

16.1.14. Proprietà Visualizzazione

../../../_images/simplify_rendering.png

Fig. 16.60 Finestra di dialogo Proprietà di Visualizzazione del layer

16.1.14.1. Visibilità dipendente dalla scala

Puoi impostare la scala Massimo (incluso) e quella Minimo (escluso), definendo un intervallo di valori di scala in cui le geometrie saranno visibili. Fuori di questo intervallo sono nascoste. Il pulsante mapIdentification Imposta alla scala corrente dell’estensione della mappa ti consente di utilizzare la scala corrente della mappa come limite di visibilità. Vedi Selettore della scala di visibilità per maggiori informazioni.

Nota

Puoi anche attivare la visibilità dipendente dalla scala su un layer dall’interno del pannello Layer: fai clic con il pulsante destro del mouse sul layer e nel menu contestuale seleziona Imposta Scala e Visibilità Layer.

16.1.14.2. Semplifica geometria

QGIS offre il supporto per la generalizzazione delle geometrie on-the-fly. Ciò può migliorare i tempi di visualizzazione quando si disegnano molteplici oggetti complessi a piccole scale. Questa funzionalità può essere abilitata o disattivata nelle impostazioni del layer utilizzando l’opzione checkbox Semplifica geometrie. Esiste anche un’impostazione globale che consente la generalizzazione per impostazione predefinita per i nuovi layer aggiunti (per ulteriori informazioni, vedi global simplification)

Nota

La generalizzazione delle geometrie può in alcuni casi presentare artefatti nel tuo output di visualizzazione. Questi possono includere slivers tra poligoni e visualizzazioni imprecise quando si utilizzano layers di simboli basati su offset.

Durante la visualizzazione di layers estremamente dettagliati (ad esempio, layers poligonali con un numero enorme di nodi), ciò può far sì che le esportazioni delle composizioni di stampa in formato PDF/SVG siano enormi in quanto tutti i nodi sono inclusi nei file esportati. Questo può anche rendere i file risultanti molto lenti per funzionare con/aprire in altri programmi.

Con l’opzione checkbox Forza la visualizzazione del vettore come raster si impone per questi layer una rasterizzazione in modo che i file esportati non dovranno includere tutti i nodi contenuti in questi layers e quindi rendere più rapida la visualizzazione.

Puoi anche farlo obbligando il layout ad esportare come raster, ma è una soluzione tutto o niente, dato che la rasterizzazione viene applicata a tutti i layer.

Aggiorna i layer a intervalli (secondi): imposta un timer per aggiornare automaticamente i singoli layer ad un intervallo corrispondente. Gli aggiornamenti delle mappe sono posticipati per evitare di aggiornare più volte se più di un layer ha impostato un intervallo di aggiornamento automatico.

A seconda del fornitore di dati (ad es. PostgreSQL), le notifiche possono essere inviate a QGIS quando vengono applicate modifiche all’origine dati, da QGIS. Utilizza checkbox Livello di aggiornamento sulla notifica per attivare un aggiornamento. Puoi anche limitare l’aggiornamento del layer ad un messaggio specifico impostato nella casella di controllo checkbox Solo se il messaggio è casella di testo .

16.1.14.3. Utilizzare la scala di riferimento

Se impostata, la scala di riferimento indica la scala della mappa a cui si riferiscono la simbologia e le dimensioni dell’etichettatura che utilizzano unità cartacee (come millimetri o punti). Le dimensioni saranno scalate di conseguenza ogni volta che la mappa viene visualizzata in una scala diversa.

Ad esempio, un vettore lineare che utilizza una linea di 2 mm di larghezza con una scala di riferimento di 1:2000 verrà rappresentato con linee di 4 mm di larghezza quando la mappa viene visualizzata in 1:1000.

16.1.15. Proprietà temporali

La scheda temporal Temporale fornisce opzioni per controllare la visualizzazione del layer nel tempo. Questa visualizzazione dinamica richiede che la temporal navigation sia abilitata sull’area di disegno della mappa.

../../../_images/vector_temporal.png

Fig. 16.61 Finestra di dialogo delle proprietà temporali del layer vettoriale

Seleziona l’opzione checkbox Controllo Temporale Dinamico per configurare la visualizzazione temporale del layer vettoriale. A seconda della struttura del tuo insieme di dati, potresti voler usare una delle opzioni Configurazione fornite:

  • Intervallo di Tempo Fissato: tutti gli elementi vengono visualizzati se la cornice temporale dell’area di disegno della mappa si sovrappone all’intervallo Data iniziale e Data finale.

  • Campo singolo con Date/Time: gli elementi vengono visualizzati se il valore del loro Campo rientra nella cornice temporale della area di disegno della mappa. È possibile impostare una Durata evento. Selezionando l’opzione Accumula elementi nel tempo, tutti gli elementi che si verificano prima o all’interno dell’intervallo temporale della mappa continueranno a essere visualizzati. La durata dell’evento viene quindi ignorata.

  • Campi separati per inizio e termine Date/Time: gli elementi vengono visualizzati se l’intervallo specificato dai loro valori Campo inizio e Campo fine si sovrappone all’area di disegno della mappa.

  • Campi separati per Inizio e Durata Evento: gli elementi vengono visualizzati se l’intervallo definito dai loro valori Campo Inizio e Campo Durata Evento si sovrappone all’area di disegno della mappa.

  • Inizio e Termine Date/Time da Espressioni: gli elementi vengono visualizzati se l’intervallo temporale specificato dai campi Inizio espressione e Fine espressione si sovrappone all’area di disegno della mappa.

  • Ridisegna solo il Layer: il layer viene ridisegnato a ogni nuovo fotogramma di animazione, ma non viene applicato alcun filtro temporale agli elementi. È utile quando il layer utilizza valori di espressione basati sul tempo per le impostazioni della visualizzazione (ad esempio, la simbologia definita dai dati).

È anche possibile impostare i Limiti dell’intervallo di tempo degli elementi come:

  • Includi Inizio, Escludi Fine

  • Includi Inizio, Includi Fine

16.1.16. Scheda Variabili

expression La scheda Variabili elenca tutte le variabili disponibili a livello di layer (che include tutte le variabili globali e di progetto).

Consente inoltre all’utente di gestire le variabili a livello di layer. Fai click sul pulsante symbologyAdd per aggiungere una nuova variabile a livello di layer personalizzato. Allo stesso modo, seleziona una variabile a livello di layer personalizzato dall’elenco e fai click sul pulsante symbologyRemove per rimuoverla.

Ulteriori informazioni sull’utilizzo delle variabili nella sezione Memorizzazione valori nelle Variabili.

16.1.17. Proprietà Elevazione

La scheda elevationscale Elevazione fornisce opzioni per controllare le proprietà di elevazione del layer all’interno di una 3D map view e il suo aspetto nelle profile tool charts. In particolare, puoi impostare:

../../../_images/vector_elevation.png

Fig. 16.62 Finestra di dialogo delle proprietà di Elevazione del layer vettoriale

  • :Blocco dell’Elevazione: definisce come e se l’altitudine degli elementi deve essere:

    • Bloccato sul Terreno: considera l’elevazione direttamente dall’altezza del terreno e ignora qualsiasi valore Z esistente negli elementi. Si può anche riempire un valore Offset definito dai dati rispetto al terreno.

    • Relativo al Terreno: qualsiasi valore Z esistente negli elementi viene aggiunto all’altezza del terreno. Un fattore Scala seguito da un Offset definito dai dati può essere usato per regolare l’altezza. Questa opzione non è disponibile per i layer di geometria 2D.

    • Assoluto: ignora l’altezza del terreno e prende direttamente i valori Z dagli elementi per l’elevazione. Un fattore Scale seguito da un Offset definito dai dati può essere usato per regolare l’elevazione. Per i layer di geometria 2D (senza valori Z), si può invece impostare una Altezza base definita dai dati.

  • unchecked Abilita Estrusione: puoi impostare una Altezza per controllare l’altezza degli elementi che si estendono verticalmente al di sopra della loro base. Questo è utile per indicare che un layer di geometria 2D, ad esempio un layer di planimetrie di edifici poligonali, rappresenta in realtà oggetti 3D.

  • Blocco altimetrico: rilevante solo quando si combina un Blocco dell’Elevazione che fa affidamento sul terreno con un layer di linee o poligoni, questa opzione controlla come viene impostata l’elevazione dell’elemento rispetto all’altezza del terreno. Il terreno può essere campionato:

    • al :guilabel:”Centroide” dell’elemento, con l’altezza del centroide che viene aggiunta al valore z di ogni vertice.

    • ad ogni singolo Vertice prima di essere aggiunto al valore z del vertice.

  • Aspetto del Grafico di Profilo: controlla il modo in cui gli elementi vengono rappresentati quando si disegna un grafico di profilo. Sono disponibili due modalità principali di Interpretazione:

    • as Elementi Individuali: campiona le posizioni discrete in cui la linea del profilo della sezione trasversale interseca gli elementi vettoriali. L’intersezione può essere rappresentata come punto, linea o superficie, a seconda del tipo di layer e dell’applicazione di una estrusione.

      Selezionando checkbox Rispetta la simbologia del layer, gli elementi saranno rappresentati sul diagramma di profilo con il corrispondente stile del layer (consentendo, ad esempio, alle classi categorizzate di essere visibili sul grafico del profilo). Se il tipo di simbolo del profilo non corrisponde ai tipi di simbolo della visualizzazione del layer, al simbolo del profilo viene applicato solo il colore del simbolo della visualizzazione.

      A seconda delle impostazioni del layer, i simboli del profilo possono essere rappresentati con uno stile personalizzato, utilizzando:

      • Marker style: per elementi puntuali e lineari non estrusi e per elementi poligonali non estrusi interessati dalla linea del profilo

      • Line style: per elementi estrusi di punti e linee e per elementi poligonali non estrusi intersecati dalla linea del profilo.

      • Fill style: per elementi poligonali estrusi

    • as Superficie Continua (ad esempio Curve di livello): il grafico di elevazione sarà rappresentato come una superficie invece che come un elemento separato, unendo i risultati del campionamento dell’elevazione in una linea continua. Questo può migliorare la visualizzazione ed è pensato per i layer vettoriali che rappresentano una superficie di elevazione continua, ad esempio le curve di livello o i punti di elevazione rilevati. La linea Stile può essere impostata come:

      • un profilo Linea con applicato uno Stile Linea

      • una superficie con Riempimento e un corrispondente Stile riempimento.

      Inoltre, puoi selezionare unchecked Mostra i simboli nei punti campionati per renderli visibili sulla linea di interpretazione e assegnare loro uno Stile simbolo.

16.1.18. Scheda Metadati

La scheda editMetadata Metadati fornisce le opzioni per creare e modificare un rapporto sui metadati del layer. Per ulteriori informazioni, vedere Metadati.

16.1.19. Proprietà Dipendenze

dependencies La scheda Dipendenze permette di stabilire le dipendenze dei dati tra i layer. Una dipendenza dai dati si verifica quando una modifica dei dati in un layer, non tramite manipolazione diretta da parte dell’utente, può modificare i dati di altri layer. Questo è il caso per esempio quando la geometria di un layer è aggiornata da un trigger di database o da uno scripting PyQGIS personalizzato dopo la modifica della geometria di un altro layer.

Nella scheda Dipendenze, puoi selezionare tutti i layer che possono alterare esternamente i dati del layer corrente. Specificare correttamente i livelli dipendenti permette a QGIS di invalidare le cache per questo layer quando i layer dipendenti vengono alterati.

16.1.20. Proprietà Legenda

legend La scheda proprietà Legenda ti fornisce impostazioni avanzate per il Layers panel e/o la print layout legend. Queste opzioni includono:

  • A seconda della simbologia applicata al layer, puoi avere diverse voci nella legenda, non necessariamente leggibili/utili da visualizzare. La Immagine segnaposto della legenda aiuta a select an image da sostituire, visualizzata sia nel pannello Layer che nella legenda del layout di stampa.

  • |Mostra Legenda Etichette: Mostra una panoramica delle diverse impostazioni delle etichette come voci nelle legende. Il label style viene visualizzato in anteprima insieme alla descrizione.

  • checkboxTesto su Simboli: In alcuni casi può essere utile aggiungere informazioni aggiuntive ai simboli nella legenda. Con questa finestra, puoi applicare ai simboli utilizzati nella simbologia dei layer un testo che viene visualizzato sopra il simbolo, sia nel pannello Layer che nella legenda del layout di stampa. Questa mappatura viene eseguita digitando ogni testo accanto al simbolo nel widget della tabella o riempiendo la tabella usando il pulsante Imposta etichette da espressione. L’aspetto del testo viene gestito attraverso i widget di selezione dei caratteri e dei colori del pulsante Formato Testo.

../../../_images/text_legend_symbols.png

Fig. 16.63 Impostazione testo sui simboli (a sinistra) e sua visualizzazione nel pannello Layer (destra)

  • un elenco di widget che puoi incorporare all’interno dell’albero dei layer nel pannello dei layer. L’idea è quella di avere un modo per accedere rapidamente ad alcune azioni che sono spesso usate con il layer (configurazione trasparenza, filtraggio, selezione, stile o altre impostazioni….).

    Per impostazione predefinita, QGIS fornisce widget di trasparenza, ma questo può essere esteso da plugin che registrano i propri widget e assegnano azioni personalizzate ai layer che gestiscono.

16.1.21. Proprietà Server QGIS

La scheda overlay QGIS Server è composta dalle sezioni Descrizione, Assegnazione, URL metadati e URL legenda.

Dalla sezione Descrizione, puoi cambiare la Breve descrizione usata per fare riferimento al layer nelle richieste (per saperne di più sui nomi brevi, leggi Nome breve). Puoi anche aggiungere o modificare Titolo e Riassunto per il layer, o definire una Lista delle parole chiave qui. Questi elenchi di parole chiave possono essere usati in un catalogo di metadati. Se vuoi usare un titolo da un file di metadati XML, devi inserire un link nel campo URL dati.

Utilizza Assegnazione per ottenere i dati di attributo da un catalogo di metadati in formato XML.

In URL metadati, puoi aggiungere i percorsi generali al catalogo dei metadati XML. Queste informazioni saranno salvate nel file di progetto QGIS per le sessioni successive e saranno utilizzate per QGIS Server.

Nella sezione URL legenda, puoi fornire l’url di un’immagine di legenda nel campo url. Puoi utilizzare l’opzione a discesa Formato per applicare il formato appropriato dell’immagine. Attualmente sono supportati i formati di immagine png, jpg e jpeg.

../../../_images/vector_server_properties.png

Fig. 16.64 Scheda Server QGIS nella finestra di dialogo delle proprietà dei layer vettoriali

Per saperne di più su QGIS Server, leggi il QGIS Server Guida/Manuale.

16.1.22. Proprietà Digitalizzazione

digitizing La scheda Digitalizzazione dà accesso a opzioni che aiutano a garantire la qualità delle geometrie digitalizzate.

../../../_images/vector_digitizing_properties.png

Fig. 16.65 Scheda Digitalizzazione QGIS nella finestra di dialogo delle proprietà dei layer vettoriali

16.1.22.1. Correzioni automatiche

Le opzioni nella sezione Correzioni Automatiche influenzano direttamente i vertici di qualsiasi geometria aggiunta o modificata. Se l’opzione checkbox Rimuovi nodi duplicati è selezionata, tutte le coppie di vertici successivi con le stesse coordinate saranno rimosse. Se è impostata l’opzione Precisione geometria, tutti i vertici saranno arrotondati al multiplo più vicino alla precisione geometrica configurata. L’arrotondamento avverrà nel sistema di riferimento delle coordinate del layer. I valori Z e M non vengono arrotondati. Con molti strumenti, una griglia viene mostrata sulla mappa durante la digitalizzazione.

../../../_images/vertex_snap_to_grid.png

Fig. 16.66 Spostando il vertice superiore, tutti i vertici vengono agganciati alla griglia.

16.1.22.2. Controlli geometria

Nella sezione Controlli geometria puoie attivare ulteriori convalide per geometria. Subito dopo qualsiasi modifica della geometria, i fallimenti di questi controlli vengono segnalati all’utente nel pannello Convalida geometria. Finché un controllo non riesce, non è possibile salvare il layer. Il controllo checkbox E” valida esegue controlli di validità di base come l’autointersezione sulle geometrie.

16.1.22.3. Controlli topologici

Nella sezione Controlli topologici puoi attivare controlli aggiuntivi di convalida della topologia. I controlli della topologia vengono eseguiti quando l’utente salva il layer. Gli errori di controllo saranno segnalati nel pannello Convalida geometria. Finché sono presenti errori di validazione, il layer non può essere salvato. I controlli topologici vengono eseguiti nell’area del rettangolo di selezione degli elementi modificati. Poiché nella stessa area possono essere presenti altri elementi, vengono segnalati gli errori topologici relativi a questi elementi e quelli introdotti nella sessione di modifica corrente.

Opzione verifica topologica

Illustrazione

La verifica checkbox Vuoto controllerà la presenza di spazi vuoti tra i poligoni adiacenti.

../../../_images/gapcheck.png

checkbox Sovrappone controllerà le sovrapposizioni tra i poligoni vicini.

../../../_images/overlapcheck.png

checkboxVertice Mancante controlla i confini condivisi dei poligoni vicini quando un confine manca di un vertice presente sull’altro.

../../../_images/missingvertexcheck.png

Eccezioni ai controlli dei vuoti

A volte è desiderabile mantenere dei vuoti all’interno di un’area in un layer di poligoni che altrimenti è completamente coperto da poligoni. Per esempio, uno strato di uso del suolo può avere dei buchi accettabili per i laghi. È possibile definire aree che vengono ignorate nel controllo degli spazi vuoti. Poiché gli spazi vuoti all’interno di queste aree sono consentiti, ci riferiremo ad esse come aree con Vuoti Consentiti.

Nelle opzioni per i controlli dei vuoti sotto Vuoti consentiti, si può configurare un layer Vuoti Consentiti.

Ogni volta che viene eseguito il controllo degli spazi vuoti, gli spazi vuoti che sono coperti da uno o più poligoni nel Layer con Vuoti Consentiti non sono riportati come errori di topologia.

È anche possibile configurare un ulteriore Buffer. Questo buffer viene applicato ad ogni poligono sul Layer con Vuoti Consentiti. Questo permette di rendere i test meno sensibili ai piccoli cambiamenti dei contorni ai bordi dei vuoti.

Quando sono abilitati i Vuoti Consentiti, un pulsante aggiuntivo (Aggiungi Vuoti Consentiti) per gli errori per vuoti rilevati è disponibile nel dock di validazione della geometria, dove i vuoti sono segnalati durante la digitalizzazione. Se il pulsante Aggiungi Vuoti Consentiti viene premuto, un nuovo poligono con la geometria del vuoto rilevato viene inserito nel Layer Vuoti Consentiti. Questo rende possibile segnalare rapidamente gli spazi vuoti come consentiti.

Pannello validazione geometria

Il pannello Validazione geometria viene attivato quando uno dei controlli di digitalizzazione sopra citati trova un errore. La finestra di dialogo fornisce l’elenco degli errori e la loro descrizione; puoi scorrere l’elenco utilizzando le frecce della tastiera o le frecce dedicate.

Dovrai risolvere tutti i problemi prima di poter salvare le modifiche al layer. Per farlo:

  1. Seleziona un errore, ed è possibile:

    • zoomToSelected Zoom al(agli) elemento

    • zoomToLayer Zoom al problema

  2. Scegli il solito digitizing tools per risolvere il problema.