17. Lavorare con i dati Mesh

17.1. Cos’è una mesh?

Una mesh è una griglia non strutturata di solito con componenti temporali e altre componenti. La componente spaziale contiene un insieme di vertici, bordi e/o facce, nello spazio 2D o 3D:

  • vertici - punti XY(Z) (nel sistema di riferimento delle coordinate del layer)

  • bordi - collegano coppie di vertici

  • Facce - una faccia è un insieme di bordi che formano una forma chiusa - tipicamente un triangolo o un poligono a quattro lati (quadrilatero), raramente poligoni con più vertici.

In base a quanto detto sopra, i layer mesh possono quindi avere diversi tipi di struttura:

  • Mesh 1D: sono costituite da vertici e bordi. Un bordo collega due vertici e può contenere dati assegnati (scalari o vettori). La rete mesh 1D può essere utilizzata, ad esempio, per la modellazione di un sistema di drenaggio urbano.

  • Mesh 2D: sono costituite da facce con triangoli, quadrilateri regolari o non strutturati.

  • Mesh 3D stratificate: consistono in più mesh 2D non strutturate impilate, ciascuna estrusa in direzione verticale (livelli) per mezzo di una coordinata verticale. I vertici e le facce hanno la stessa topologia in ogni livello verticale. La definizione della mesh (estrusione dei livelli verticali) può in generale cambiare nel tempo. I dati sono solitamente definiti in base ai centri di volume o a qualche funzione parametrica.

../../../_images/mesh_grid_types.png

Fig. 17.1 Differenti tipologie di dati mesh

Mesh contiene le informazioni sulla struttura spaziale. Inoltre, la mesh può avere set di dati (gruppi) che assegnano un valore ad ogni vertice. Ad esempio, avere una mesh triangolare con vertici numerati come mostrato nell’immagine seguente:

../../../_images/triangual_grid_with_numered_vertices.png

Fig. 17.2 Griglia triangolare con vertici numerati

Ogni vertice può memorizzare insiemi di dati diversi (tipicamente quantità multiple), e questi insiemi di dati possono anche avere una dimensione temporale. Pertanto un singolo file può contenere insiemi di dati multipli.

La tabella seguente dà un’idea delle informazioni che possono essere memorizzate nei set di dati delle mesh. Le colonne della tabella rappresentano gli indici dei vertici delle mesh, ogni riga rappresenta un set di dati. I set di dati possono avere diversi tipi di dati. In questo caso, memorizza la velocità del vento a 10m in momenti particolari (t1, t2, t3).

In modo simile, il set di dati della mesh può anche memorizzare valori vettoriali per ogni vertice. Ad esempio, il vettore della direzione del vento in corrispondenza degli orari indicati:

Velocità del vento a 10 metri

1

2

3

Velocità del vento a 10 metri al tempo=t1

17251

24918

32858

Velocità del vento a 10 metri al tempo=t2

19168

23001

36418

Velocità del vento a 10 metri al tempo=t3

21085

30668

17251

Direzione del vento a 10 metri al tempo=t1

[20,2]

[20,3]

[20,4.5]

Direzione del vento a 10 metri al tempo=t2

[21,3]

[21,4]

[21,5.5]

Direzione del vento a 10 metri al tempo=t3

[22,4]

[22,5]

[22,6.5]

Possiamo visualizzare i dati assegnando i colori ai valori (analogamente a come viene fatto con visualizzazione raster Singleband pseudocolor) e interpolando i dati tra i vertici secondo la topologia della mesh. Generalmente alcune grandezze sono vettori 2D piuttosto che semplici valori scalari (ad esempio direzione del vento). Per tali quantità è utile visualizzare le frecce che indicano le direzioni.

../../../_images/mesh_visualisation.png

Fig. 17.3 Possibile visualizzazione di dati mesh

17.2. Formati supportati

QGIS accede ai dati mesh usando i driver MDAL https://github.com/lutraconsulting/MDAL, e supporta nativamente vari formati https://github.com/lutraconsulting/MDAL#supported-formats. Se QGIS può modificare un layer mesh dipende dal formato e dal tipo di struttura mesh.

Per caricare un set di dati mesh in QGIS, usa la scheda addMeshLayer Mesh nella finestra di dialogo Gestore della Sorgenti Dati. Leggi Caricare un layer mesh per maggiori dettagli.

17.3. Proprietà del Dataset Mesh

La finestra di dialogo Proprietà del layer per un layer mesh fornisce le impostazioni generali per gestire i gruppi di dati del layer e la loro visualizzazione (gruppi di dati attivi, simbologia, visualizzazione 2D e 3D). Fornisce inoltre informazioni sul layer.

Per accedere alla finestra di dialogo Proprietà del layer:

  • Nel pannello Layer, fai doppio clic sul layer o fai clic con il pulsante destro del mouse e seleziona Proprietà… dal menu a comparsa;

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

La finestra di dialogo della mesh Proprietà Layer contiene le seguenti sezioni:

Metadati Information

Sorgente Source

Simbologia Symbology[1]

Vista 3d 3D View[1]

Temporale Temporal

Visualizzazione Rendering

editMetadata Metadata

[1] Disponibile anche nel Layer styling panel

Nota

La maggior parte delle proprietà di un layer mesh può essere salvata o caricata da un .qml usando il menu Stile in fondo alla finestra di dialogo. Maggiori dettagli in Gestione stili personalizzati.

17.3.1. Proprietà Informazioni

../../../_images/mesh_info_properties.png

Fig. 17.4 Proprietà Informazioni sul layer mesh

La scheda |metadati| Informazioni è di sola lettura e rappresenta un luogo interessante per ottenere rapidamente informazioni sintetiche e metadati sul layer corrente. Le informazioni fornite sono:

  • di tipo generale, come il nome nel progetto, il percorso del sorgente, l’elenco dei file ausiliari, l’ora e la dimensione dell’ultimo salvataggio, il provider utilizzato.

  • in base al fornitore del layer: estensione, vertice, faccia, bordi e/o conteggio dei gruppi di dati

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

  • estratti da metadata: accesso, estensioni, link, contatti, storia…

17.3.2. Proprietà Sorgente

La scheda Sorgente Sorgente visualizza le informazioni di base sulla mesh selezionata, tra cui:

../../../_images/mesh_source.png

Fig. 17.5 Proprietà Sorgente del layer mesh

  • il nome del layer da visualizzare nel pannello Layer.

  • impostazione del sistema di riferimento delle coordinate: Visualizza il Assigned Coordinate Reference System (CRS) del layer. Puoi modificare il SR del layer selezionandone uno usato di recente nell’elenco a discesa o facendo clic sul pulsante Seleziona SR (vedi Scelta del sistema di riferimento delle coordinate). Utilizza questa procedura solo se il SR applicato al layer è sbagliato o se non ne è stato applicato nessuno.

  • Il riquadro :guilabel: Dataset disponibili elenca tutti i gruppi (e sottogruppi) di dataset nel layer mesh, con il loro tipo e la loro descrizione in una vista ad albero. Sono elencati sia i dataset regolari (cioè i cui dati sono memorizzati nel file) sia i dataset virtuali (che sono calculated on the fly).

    • Usa il pulsante add Assegna Extra Dataset a Mesh per aggiungere altri gruppi al layer della mesh corrente.

    • collapseTree Racchiudi Tutto” e |expandTree| :guilabel:`Espandi Tutto l’albero dei dataset, in caso di gruppi incorporati

    • Se sei interessato a pochi dataset, puoi deselezionare gli altri e renderli non disponibili nel progetto.

    • Facendo doppio clic su un nome puoi rinominare il dataset.

    • |Ripristina ai Valori Predefiniti: controlla tutti i gruppi e li rinomina con il loro nome originale del provider.

    • Facendo clic con il tasto destro del mouse su un gruppo di dataset virtuali, puoi:

      • Rimuovi gruppo di dati dal progetto

      • Salva il gruppo di dataset come… un file su disco, in qualsiasi formato supportato. Il nuovo file viene mantenuto assegnato al layer mesh corrente del progetto.

  • Selezionando il gruppo unchecked Tratta come un Dataset Statico puoi ignorare le proprietà di navigazione temporale della mappa durante la visualizzazione del layer mesh. Per ogni gruppo di dataset attivo (come selezionato nella scheda Simbologia Simbologia ► generale Dataset), puoi:

    • imposta su :guilabel: Nessuno: il gruppo di dati non viene visualizzato affatto.

    • Display dataset: ad esempio, per il dataset «bed elevation» che non è basato sul tempo

    • estrarre una data e un’ora particolari: il dataset corrispondente all’ora fornita viene reso e rimane fisso durante la navigazione della mappa.

17.3.3. Proprietà Simbologia

Fai clic sul pulsante Simbologia Simbologia per attivare la finestra di dialogo. Le proprietà della simbologia sono suddivise in diverse schede:

17.3.3.1. Dataset

La scheda generale :sup: Dataset è il luogo principale per controllare e impostare quali dataset saranno utilizzati per il layer. Presenta le seguenti sezioni:

  • Gruppi disponibili nel dataset della mesh, con l’indicazione se forniscono o meno:

    • meshcontoursoff dataset scalari

    • o meshvectorsoff dataset vettoriale: per impostazione predefinita, ogni dataset vettoriale ha un dataset scalare che rappresenta la sua ampiezza generata automaticamente.

    Fai clic sull’icona accanto al nome del dataset per selezionare il gruppo e il tipo di dati da rappresentare.

  • Metadati del(i) gruppo di dati selezionato, con dettagli su:

    • il tipo di mesh: bordi o facce

    • il tipo di dati: vertici, bordi, facce o volume

    • se è di tipo vettoriale o no

    • il nome originale nel layer mesh

    • l’unità, se applicabile

  • blending mode disponibile per i dataset selezionati.

../../../_images/mesh_symbology_datasets.png

Fig. 17.6 Dataset Layer Mesh

Puoi applicare la simbologia al gruppo vettoriale e/o scalare selezionato utilizzando le schede successive.

17.3.3.2. Simbologia delle curve di livello

Nota

La scheda meshcontours Contours può essere attivata solo se nella scheda generale Dataset è stato selezionato un set di dati scalari.

Nella scheda meshcontours Contours puoi vedere e modificare le opzioni di visualizzazione corrente delle curve di livello per il gruppo selezionato, come mostrato in Fig. 17.7 qui di seguito:

../../../_images/mesh_symbology_contours.png

Fig. 17.7 Stile dei contorni in un layer Mesh

  • Per le mesh 1D, imposta la Larghezza del tratto dei bordi. Questa può essere una dimensione fissa per l’intero set di dati o variare lungo la geometria (maggiori dettagli con il interpolated line renderer).

  • Usa il cursore o la casella di selezione per impostare la Opacità del gruppo corrente, se di tipo mesh 2D.

  • Inserisci l’intervallo di valori che vuoi rappresentare nel gruppo corrente: usa refresh Carica per recuperare i valori minimi e massimi del gruppo corrente o inserisci valori personalizzati se vuoi escluderne alcuni.

  • Per le mesh 2D/3D, seleziona Metodo di ricampionamento per interpolare i valori sui vertici circostanti alle facce (o dalle facce circostanti ai vertici) usando il metodo Vicino Medio. A seconda che il set di dati sia definito sui vertici (o sulle facce), QGIS imposta per default il metodo Nessuno (o Vicino Medio) per utilizzare i valori sui vertici e mantenere la visualizzazione uniforme predefinita.

  • Classifica il dataset utilizzando la classificazione color ramp shader.

17.3.3.3. Simbologia Vettori

Nota

La scheda meshvectors Vettori può essere attivata solo se nella scheda generale Dataset è stato selezionato un set di dati vettoriali.

Nella scheda meshvectors Vettori puoi vedere e modificare le opzioni di visualizzazione corrente dei vettori per il gruppo selezionato, come mostrato in Fig. 17.8:

../../../_images/mesh_symbology_vectors.png

Fig. 17.8 Stilizzare i vettori in un layer mesh con frecce

I dataset vettoriali mesh possono essere stilizzati usando vari tipi di Simbologia:

  • Frecce: i vettori vengono rappresentati con frecce nello stesso punto in cui sono definiti nel dataset grezzo (cioè sui nodi o al centro degli elementi) o su una griglia definita dall’utente (quindi, sono distribuiti uniformemente). La lunghezza della freccia è proporzionale alla grandezza della freccia come definita nei dati grezzi, ma può essere dimensionata con vari metodi.

  • Streamlines: i vettori sono rappresentati con linee di flusso che partono da punti iniziali. I punti di partenza possono partire dai vertici della mesh, da una griglia utente o in modo casuale.

  • Tracce: un’animazione più raffinata delle linee di flusso, il tipo di effetto che si ottiene quando si getta a caso della sabbia nell’acqua e si vede dove gli elementi di sabbia scorrono.

Le proprietà disponibili dipendono dalla simbologia selezionata, come mostrato nella tabella seguente.

Etichetta

Descrizione e Proprietà

Freccia

Streamlines

Tracce

Spessore Linea

Larghezza della rappresentazione vettoriale

checkbox

checkbox

checkbox

Metodo di Colorazione

  • un Colore Singolo assegnato a tutti i vettori

  • o un colore variabile basato sull’ampiezza dei vettori, usando una Color ramp shader.

checkbox

checkbox

checkbox

Filtra per magnitudine

Vengono visualizzati solo i vettori la cui lunghezza per il dataset selezionato è compresa tra un intervallo :guilabel:`Min” e :guilabel:`Max

checkbox

checkbox

Visualizza su Reticolo Utente

Posiziona il vettore su una griglia con Spaziatura X e Spaziatura Y personalizzati e ne interpola la lunghezza in base ai vicini.

checkbox

checkbox

Opzioni Intestazione

Lunghezza e Larghezza della punta della freccia, in percentuale rispetto alla lunghezza dell’asta.

checkbox

Lunghezza della Freccia

  • Definito da Minimo e Massimo: puoi specificare la lunghezza minima e massima per le frecce, QGIS interpolerà la loro dimensione in base alla grandezza del vettore corrispondente.

  • Scalato a Magnitudine: la lunghezza della freccia è proporzionale alla magnitudine del relativo vettore.

  • Fisso: tutti i vettori sono mostrati con la stessa lunghezza

checkbox

Metodo di Semina delle Streamlines

  • Su mesh/griglia: si appoggia alla griglia dell’utente per visualizzare i vettori

  • Casuale: il posizionamento dei vettori avviene in modo casuale rispetto a una determinata densità

checkbox

Conteggio Particelle

La quantità di «sabbia» che vuoi immettere nella visualizzazione

checkbox

Massima lunghezza coda

Il tempo per la scomparsa delle particelle

checkbox

17.3.3.4. Visualizzazione

Nella scheda meshframe Visualizzazione, QGIS offre la possibilità di visualizzare e personalizzare la struttura della mesha. Larghezza linea e Colore linea possono essere impostati per rappresentare:

  • i bordi per le mesh 1D

  • Per le mesh 2D:

    • Visualizzazione Mesh Nativa: mostra le facce e i bordi originali del layer.

    • Visualizzazione Mesh Triangolare: aggiunge più bordi e visualizza le facce come triangoli.

../../../_images/mesh_symbology_grid.png

Fig. 17.9 Visualizzazione Mesh 2D

17.3.3.5. Metodo della media delle mesh impilate

Le mesh 3D stratificate sono costituite da più mesh 2D non strutturate impilate, ciascuna estrusa in direzione verticale (livelli) per mezzo di una coordinata verticale. I vertici e le facce hanno la stessa topologia in ogni livello verticale. I valori sono solitamente memorizzati sui volumi che sono regolarmente impilati sulla mesh 2d di base. Per poterli visualizzare su una superficie 2D, è necessario convertire i valori dei volumi (3d) in valori delle facce (2d) che possono essere visualizzati nel layer mesh. Il meshaveraging Metodo della media delle mesh impilate fornisce diversi metodi di mediazione/interpolazione per gestire questo aspetto.

Puoi selezionare il metodo per ricavare il dataset 2D e i parametri corrispondenti (indice livello, valori di profondità o di altezza). Per ogni metodo, nella finestra di dialogo viene mostrato un esempio di applicazione, ma puoi leggere ulteriori informazioni sui metodi sul sito https://fvwiki.tuflow.com/index.php?title=Depth_Averaging_Results.

17.3.4. Proprietà Visualizzazione 3D

Mesh layers can be used as terrain in a 3D map view based on their vertices Z values. From the Vista 3d 3D View properties tab, it’s also possible to render the mesh layer’s dataset in the same 3D view. Therefore, the vertical component of the vertices can be set equal to dataset values (for example, level of water surface) and the texture of the mesh can be set to render other dataset values with color shading (for example velocity).

../../../_images/mesh_3d.png

Fig. 17.10 Proprietà dataset Mesh 3D

Seleziona checkbox Abilita Visualizzatore 3D e puoi modificare le seguenti proprietà:

  • In Impostazioni Triangoli

    • Levigatura triangoli: Gli angoli tra triangoli consecutivi sono smussati per una migliore rappresentazione 3D.

    • Mostra wireframe di cui è possibile impostare Spessore linea e Colore.

    • Livello di dettaglio: Controlla quanto simplified deve essere il layer mesh da rappresentare. All’estrema destra, è la mesh di base e più si va a sinistra, più il livello è semplificato e viene rappresentato con meno dettagli. Questa opzione è disponibile solo se è attivata l’opzione Semplifica Mesh nella scheda Visualizzazione.

  • Impostazioni Verticali per controllare il comportamento della componente verticale.

    dei vertici dei triangoli rappresentati

    • Gruppo dataset per valore verticale: il gruppo di dataset che verrà utilizzato per la componente verticale della mesh.

    • ||unchecked|:guilabel:Valore dataset relativo al valore Z dei vertici: se considerare i valori del dataset come coordinate Z assolute o relative al valore Z nativo dei vertici.

    • Scala verticale: il fattore di scala da applicare ai valori Z del dataset.

  • Impostazione di Visualizzazione Colore con un Stile di visualizzazione che può essere basato sulla ombreggiatura a rampa di colore impostato in Simbologia delle curve di livello (Colore 2D ombreggiatura rampa colore) o come Colore singolo con un Colore della mesh collegato.

  • Mostra frecce: visualizza le frecce sull’entità 3D del dataset del layer mesh, basandosi sullo stesso gruppo di dataset vettoriali usato nel vector 2D rendering. Vengono visualizzate utilizzando l’impostazione del colore 2D. È anche possibile definire la Spaziatura freccia e, se è di Dimensione fissa o scalata sulla grandezza. Questa impostazione definisce anche la dimensione massima delle frecce, perché le frecce non possono sovrapporsi.

17.3.5. Proprietà Visualizzazione

Poiché i layer mesh possono avere milioni di facce, a volte la loro restituzione può essere molto lenta, soprattutto quando tutte le facce vengono visualizzate nella vista mentre sono troppo piccole per essere visualizzate. Per accelerare il processo di restituzione, puoi semplificare il layer mesh, ottenendo una o più mesh che rappresentano diversi levels of detail e selezionare a quale livello di dettaglio desideri che QGIS esegua il processo di restituzione del layer mesh. Nota che la mesh semplificata contiene solo facce triangolari.

Dalla scheda Visualizzazione Visualizzazione, seleziona checkbox Semplifica Mesh e imposta:

  • un Fattore di riduzione: Controlla la generazione di livelli successivi di mesh semplificate. Ad esempio, se la mesh di base ha 5M facce e il fattore di riduzione è 10, la prima mesh semplificata avrà circa 500 000 facce, la seconda 50 000 facce, la terza 5000,… Se un fattore di riduzione più alto porta rapidamente a maglie più semplici (cioè con triangoli di dimensioni maggiori), produce anche meno livelli di dettaglio.

  • Dimensione minima triangolo: la dimensione media (in pixel) dei triangoli che è consentito visualizzare. Se la dimensione media della mesh è inferiore a questo valore, viene attivata la visualizzazione di una mesh con un livello di dettaglio inferiore.

17.3.6. Proprietà Temporali

La scheda Temporale Temporale fornisce opzioni per controllare la visualizzazione del layer nel tempo. Permette di visualizzare dinamicamente i valori temporali dei gruppi di dati abilitati. Tale visualizzazione dinamica richiede che la temporal navigation sia abilitata sulla mappa.

../../../_images/mesh_temporal.png

Fig. 17.11 Proprietà Temporali Mesh

Impostazioni Layer Temporale

  • Ora di riferimento del gruppo di dati, come data assoluta. Per impostazione predefinita, QGIS analizza il layer di origine e restituisce la prima ora di riferimento valida nel gruppo di dati del layer. Se non è disponibile, il valore sarà impostato dall’intervallo di tempo del progetto o verrà riportato alla data corrente. I valori Ora di inizio e Ora finale da considerare sono quindi calcolati in base al timestamp interno del dataset.

    È possibile impostare una Ora di riferimento personalizzata (e poi l’intervallo di tempo) e ripristinare le modifiche usando il pulsante refresh Ricarica dal sorgente.

  • Metodo di corrispondenza del dataset: determina il dataset da visualizzare all’ora indicata. Le opzioni sono Trova il dataset più vicino prima dell’orario richiesto o Trova il dataset più vicino dall’ora richiesta (dopo o prima).

Impostazioni Tempo Sorgente

  • Unità di tempo estratta dai dati originali o definita dall’utente. Può essere usata per unformare la velocità del layer mesh con gli altri layer del progetto durante la navigazione temporale della mappa. Le unità supportate sono Secondi, Minuti, Ore e Giorni.

17.3.7. Proprietà Metadati

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

17.4. Calcolatore Mesh

Lo strumento Calcolatore Mesh del menu superiore Mesh consente di eseguire calcoli aritmetici e logici su gruppi di dati esistenti per generare un nuovo gruppo di dati (vedi Fig. 17.12).

../../../_images/mesh_calculator.png

Fig. 17.12 Calcolatore Mesh

L’elenco Dataset contiene tutti i gruppi di dataset nel layer mesh attivo. Per utilizzare un gruppo di set di dati in un’espressione, fai doppio clic sul suo nome nell’elenco e verrà aggiunto al campo Espressione del Calcolatore Mesh. Puoi quindi utilizzare gli operatori per costruire espressioni di calcolo, oppure digitarli semplicemente nella casella.

La sezione Layer del Risultato ti aiuta a configurare le proprietà del layer in uscita:

  • checkbox Crea un groppo dataset al volo invece che scrivere il layer su disco:

    • Se non è selezionata, l’output viene memorizzato sul disco come un nuovo file semplice. Sono richiesti un percorso File in uscita e un Formato in uscita.

    • Se questa opzione è selezionata, un nuovo gruppo di dataset verrà aggiunto al layer mesh. I valori del gruppo di dataset non vengono memorizzati, ma ogni dataset viene calcolato quando necessario con la formula inserita nel calcolatore mesh. Il gruppo di dataset virtuale viene salvato con il progetto e, se necessario, può essere rimosso o reso persistente nel file dalla scheda delle proprietà del layer :guilabel: Sorgente.

    In entrambi i casi, devi fornire una Nome gruppo per il gruppo di dati in uscita.

  • La Estensione Spaziale da considerare per il calcolo può essere:

    • una Estensione personalizzata, compilata manualmente con le coordinate X min, X max, Y min e Y max, oppure estratta da un gruppo di dataset esistente (selezionarlo nell’elenco e premere Usa Estensione del Layer Selezionato per compilare i campi delle coordinate sopra citate)

    • definito da un layer poligonale (Layer Maschera) del progetto: la geometria degli elementi poligonali viene utilizzata per ritagliare i dataset del layer mesh

  • La Estensione Temporale da prendere in considerazione per le serie di dati può essere impostata con le opzioni Ora di inizio e Ora finale, selezionate dai tempi dei gruppi di dati esistenti. Possono anche essere valorizzati utilizzando il pulsante Usa Orari di Tutti i Dataset Seezionati per prendere l’intero intervallo.

La sezione Operatori contiene tutti gli operatori disponibili. Per aggiungere un operatore alla casella di espressione del calcolatore mesh, fai clic sul pulsante appropriato. Sono disponibili calcoli matematici (+, -, *, … ) e funzioni statistiche (min, max, somma (aggr), media (aggr), …). ) sono disponibili. Le espressioni condizionali (=, !=, <, >=, IF, AND, NOT, … ) restituiscono 0 per il falso e 1 per il vero e possono quindi essere utilizzate con altri operatori e funzioni. Anche il valore NODATA può essere utilizzato nelle espressioni.

Il widget Espressione del Calcolatore Mesh ti mostra e ti consente di modificare l’espressione da eseguire.