[Gfoss] ancora: QGIS UTM ED50 Emilia Romagna

Antonio Falciano afalciano a yahoo.it
Mar 23 Set 2008 11:03:40 CEST


Enrico Lambertini ha scritto:
> grazie a tutti per l'aiuto, soprattutto ad Antonio per la descrizione
> attenta per dettagliata

di nulla!

> Il giorno 21 settembre 2008 19.48, Antonio Falciano ha scritto:
> 
> 
>     Ti visualizza le cordinate "originali" poichè riconosce solo questa
>     stringa:
>     +proj=utm +zone=32 +ellps=intl +units=m
>     che di fatto è l'UTM ED50 32N (EPSG:23032).
>     La sottostringa "+toWGS84 +y0=-4000000" non è corretta, perchè +towgs84
>     è seguito da 3 o da 7 parametri e il falso nord non si definisce con +y0 ma
>     con +y_0.
>     Inoltre, anche se il falso nord fosse stato definito correttamente, le
>     coordinate rimarrebbero ugualmente inalterate poichè in proj.4 alcuni
>     sistemi di coordinate, tra i quali quelli che usano "+proj=utm" e quindi
>     anche UTM ED50 32N, contengono implicitamente i valori delle false
>     origini (+x_0 e +y_0).
>     Per bypassare il problema, si tratta di utilizzare un trick, in modo da
>     "convincere" proj.4 a fare quello che vogliamo. Basta sapere cos'è UTM.
>     E' una proiezione universale trasversa di Mercatore e quindi occorre
>     semplicemente sostituire "+proj=tmerc" a "+proj=utm" per ovviare al
>     problema delle false origini. Così facendo "+y_0=-4000000" dovrebbe
>     avere effetto.
>     Ora però, avendo sostituito la proiezione (anche se, di fatto, è la
>     stessa!), dobbiamo specificare tutti gli altri parametri (ellissoide,
>     centro della proiezione, false origini e fattore di contrazione), poichè
>     proj.4 non sa più che stiamo parlando di una proiezione UTM. E quindi,
>     la stringa per 23032* dovrebbe essere:
> 
>     +proj=tmerc +ellps=intl +lat_0=0 +lon_0=9 +x_0=500000 +y_0=-4000000
>     +k=0.9996 +units=m
> 
>     In definitiva, per visualizzare correttamente le coordinate (senza falso
>     nord) dovresti definire 23032 per la vista, abilitare la proiezione al
>     volo ed assegnare 23032* (UTM-RER) ai dati.
> 
> provato, FUNZIONA... ma solo coi vettoriali, se assegno questa
> proiezione a un layer raster me la colloca correttamente, ma non la
> visualizza (bug di qgis??)

E' vero... sia sotto Hardy che sotto win, con la Metis i raster sono
visualizzati solo se sono definiti nello stesso SRS della vista. Se si
tenta di riproiettarli da un SRS differente rispetto a quello della
vista, sono georeferenziati correttamente, ma non sono visualizzati.
Non ti saprei dare una spiegazione in merito.

>     perchè sottrarre 4000000 alle y? sono coordinate in WGS84, lasciale così
>     come sono... se la vista è in 23032, dovresti aggiungere

... alla stringa +towgs84=-87,-98,-121
(qui mi ero dimenticato di scrivere i parametri)

> a questo punto penso che mi convenga tenermi come sistema di riferimento
> della vista UTM-RER e crearmi una proiezione personalizzata con cui
> traslare solo il layer dei punti WGS84 (UTM 32N), che se ho capito il
> concetto dovrebbe essere qualcosa del tipo
> +proj=tmerc +ellps=intl +lat_0=0 +lon_0=9 +x_0=-500000 +y_0=4000000
> +k=0.9996 +units=m
> 
> giusto?

No, UTM WGS84 32N (EPSG:32632) rimane inalterata, ossia:

+proj=longlat +ellps=WGS84 +datum=WGS84

Tieni presente che WGS84 è il datum di riferimento assoluto delle proj.4
e che tutti gli altri SRS possono essere ricondotti ad esso mediante dei
parametri di trasformazione (+towgs84=...) e non viceversa. Tieni conto
anche che le trasformazioni verso WGS84 hanno effetto in entrambi i versi.
Dovresti quindi aggiungere alle stringhe di UTM ED50 32N e di UTM-RER
i parametri di trasformazione verso WGS84, ossia:

[...] +towgs84=-87,-98,-121

Spero di aver chiarito un pò le idee.

ciao
Antonio









Maggiori informazioni sulla lista Gfoss