[QGIS-it-user] Differenze di quota fra linea aerea e MDT

Il 07/04/2023 15:17, Fabio Pifferini ha scritto:

con QGIS vorrei ottenere una mappa nella quale è rappresentata, per esempio con una serie di punti di colore diverso in base alla distanza, la differenza di quota fra una linea elettrica aerea (layer vettoriale con linea 3D) e il terreno sottostante (layer raster GeoTIFF MDT).

Ciao Fabio,
tramite la funzione raster_value(layer, band, point) [1] puoi ottenere il valore della cella della banda specificata del layer raster specificato che si trova in corrispondenza di un punto specificato nel layer.
Quindi, se crei un layer di punti 3D a partire dal layer di linee 3D, con una semplice espressione [2] applicata a tale layer di punti 3D puoi calcolare la differenza tra il valore della coordinata Z di ogni punto e il valore restituito dalla funzione raster_value per tale punto e quindi dovresti ottenere il risultato che desideri:

z($geometry) - raster_value('nome_del_layer_raster', numero_della_banda, $geometry)

A presto.

Andrea Giudiceandrea

[1] https://docs.qgis.org/3.28/it/docs/user_manual/expressions/functions_list.html#raster-value
[2] https://docs.qgis.org/3.28/it/docs/user_manual/expressions/expression.html#expressions

Grazie mille Andrea,
ho provato quanto da te suggerito e soddisfa appieno a quanto mi occorre.

Fabio

-----Messaggio originale-----
Da: QGIS-it-user <qgis-it-user-bounces@lists.osgeo.org> Per conto di Andrea Giudiceandrea via QGIS-it-user
Inviato: martedì, 11 aprile 2023 15:35
A: qgis-it-user@lists.osgeo.org
Oggetto: Re: [QGIS-it-user] Differenze di quota fra linea aerea e MDT

Il 07/04/2023 15:17, Fabio Pifferini ha scritto:

con QGIS vorrei ottenere una mappa nella quale è rappresentata, per
esempio con una serie di punti di colore diverso in base alla
distanza, la differenza di quota fra una linea elettrica aerea (layer
vettoriale con linea 3D) e il terreno sottostante (layer raster GeoTIFF MDT).

Ciao Fabio,
tramite la funzione raster_value(layer, band, point) [1] puoi ottenere il valore della cella della banda specificata del layer raster specificato che si trova in corrispondenza di un punto specificato nel layer.
Quindi, se crei un layer di punti 3D a partire dal layer di linee 3D, con una semplice espressione [2] applicata a tale layer di punti 3D puoi calcolare la differenza tra il valore della coordinata Z di ogni punto e il valore restituito dalla funzione raster_value per tale punto e quindi dovresti ottenere il risultato che desideri:

z($geometry) - raster_value('nome_del_layer_raster', numero_della_banda,
$geometry)

A presto.

Andrea Giudiceandrea

[1]
https://docs.qgis.org/3.28/it/docs/user_manual/expressions/functions_list.html#raster-value
[2]
https://docs.qgis.org/3.28/it/docs/user_manual/expressions/expression.html#expressions
_______________________________________________
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user