Buongiorno, riprendo un <a href="http://old.nabble.com/Concetti-di-base,-conversione-3003--%3E-4326-td16030309.html" target="_top" rel="nofollow" link="external">vecchio post</a>, che mi ha permesso di arrivare ad una soluzione per passare dal sistema di riferimento MonteMario / Italy zone 1 (EPSG:3003) a WGS84 (EPSG:4326), tramite una view di PostGis basata su una geometria in 3003; questo è utile perché (come ho sempre fatto) non devo più avere una coppia di geometrie identiche in 2 sistemi di riferimento e ricordarsi sempre di aggiornare la seconda; questa è la soluzione che cerco da tempo, di cui l'ostacolo che mi impediva di usare questa trasformazione "hide" è quello dell'errore proiettato sul territorio con discostamenti di un 100naio di metri, che avviene quando si usa la stinga SQL:</br></br>

 SELECT am.gid, st_transform(st_setsrid(am.the_geom, 3003), 4326) AS the_geom FROM am;</br></br>

Così ho cercato la soluzione trovata in quel <a href="http://old.nabble.com/Concetti-di-base,-conversione-3003--%3E-4326-td16030309.html" target="_top" rel="nofollow" link="external">vecchio post</a>.</br></br>

Da quel che ho capito bisogna applicare una correzione, che dipende da luogo in Italia in cui si trova la geometria. Tramite il sito <a href="http://www.epsg-registry.org/" target="_top" rel="nofollow" link="external">www.epsg-registry.org/</a>, in Query by filter si inserisce - Name: Monte Mario to WGS 84 - dove vengono restituiti i CODE:EPSG corrispondenti alle aree in cui è divisa l'Italia ed essendo in Lombardia sono andato a vedere: Monte Mario to WGS 84 (4) - EPSG::1660 - Italy - mainland including San Marino and Vatican City State.</br></br>

Così nella descrizione del codice EPSG::1660 la parte interessante allo scopo è quella dei Parameter Values. Questi vanno inseriti correttamente insieme al valore da inserire nella tabella spatial_ref_sys di Posgis, nel campo proj4text</br></br>

proj4text=
   '+proj=tmerc +lat_0=0 +lon_0=9 +k=0.999600 +x_0=1500000 +y_0=0 +ellps=intl +units=m +towgs84=-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68'</br></br>

Con questo valore da inserire, bisogna però aggiungere un record alla tabella spatial_ref_sys e visto che oltre a questo campo ne è presente un altro con valore non immediatamente  comprensibile srtext decido di fare una copia del record con code epsg 3003 modificando solo il campo proj4text, con la seguente stinga SQL:</br></br>

INSERT INTO spatial_ref_sys (srid, auth_name, auth_srid,srtext, proj4text)
SELECT '900914', auth_name, auth_srid,srtext, 
'+proj=tmerc +lat_0=0 +lon_0=9 +k=0.999600 +x_0=1500000 +y_0=0 +ellps=intl +units=m +towgs84=-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68'
FROM  spatial_ref_sys  WHERE srid = 3003;</br></br>

ho cambiato anche il valore del campo srid inserendo 900914, perchè da quello che ho capito è un codice personale consecutivo, successivo al 900913, che di solito viene usato per EPSG di GoogleMercator!</br></br>

Così la nuova stinga SQL da usare con la view diventa:</br></br>

 SELECT am.gid, st_transform(st_setsrid(am.the_geom, 900914), 4326) AS the_geom FROM am;</br></br>

ottenendo un risultato ragionevole come da figure a seguito.</br></br>

Monte Mario</br>
<a href="http://imageshack.us/photo/my-images/196/ammmah.png/" target="_blank" rel="nofollow" link="external"><img src="http://img196.imageshack.us/img196/4484/ammmah.th.png" border="0"/></a></br></br>

WGS84</br>
<a href="http://imageshack.us/photo/my-images/687/awgs.png/" target="_blank" rel="nofollow" link="external"><img src="http://img687.imageshack.us/img687/8374/awgs.th.png" border="0"/></a>

        <div class="signature weak-color"><table style="width: 556px;" border="0">
<tbody>
<tr>
<td>
<div><span style="color: #3366ff; font-size: x-small;">il <span class="il">boom</span> dei dati geografici è in corso, aspettiamoci quello delle informazioni spaziali</span><br /><strong><span style="color: #ff6600; font-size: x-small;"><a href='https://sites.google.com/site/gfossuglegnano/' target='_blank' rel="nofollow" link="external" >#Local Intelligent Marketing#</a></span></strong></div>
</td>
</tr>
</tbody>
</table></div>
<br/><hr align="left" width="300" />
View this message in context: <a href="http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Re-Concetti-di-base-conversione-3003-4326-tp7204212p7204212.html">Re: Concetti di base, conversione 3003 -> 4326</a><br/>
Sent from the <a href="http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/">Gfoss -- Geographic Free and Open Source Software - Italian mailing list mailing list archive</a> at Nabble.com.<br/>