Home > javascript | open source > OpenLayers: trasformazione delle coordinate di un punto da WGS84 a Spherical Mercator e viceversa

OpenLayers: trasformazione delle coordinate di un punto da WGS84 a Spherical Mercator e viceversa

10 giugno 2011 No Comments

Per visualizzare dei punti con coordinate gps (WGS84) su un layer Google Maps con OpenLayers è necessario eseguire la trasformazione delle coordinate da EPSG:4326 (ovvero WGS84) a EPSG:900913 (Spherical Mercator).

Ecco le 2 funzioni per eseguire la traformazione diretta e inversa:

/**
* Trasformazione delle coordinate da WGS84 a Spherical Mercator
*/
function wgs84ToMercator(point){
	return point.transform(
		new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
		new OpenLayers.Projection("EPSG:900913") // to Spherical Mercator Projection
	)
}

/**
* Trasformazione delle coordinate da Spherical Mercator a WGS84
*/
function MercatorToWgs84(point){
	return point.transform(
		new OpenLayers.Projection("EPSG:900913"), // transform from Spherical Mercator Projection
		new OpenLayers.Projection("EPSG:4326") // to WGS 1984
	)
}

Un esempio di utilizzo:

//definizione di un punto con sistema di coordinate WGS84
var point_WGS84 = new OpenLayers.Geometry.Point('13.1343', '45.6815');
//trasformazione delle coordinate da WGS84 a Spherical Mercator
var point_spherical_mercator = wgs84ToMercator(point);

Con la funzione “point.transform(projection1, projection2)” è possibile eseguire qualsiasi trasformazione tra sistemi di coordinate semplicemente modificando i codici SRS (spatial reference systems).

Tags: gis javascript open layers webgis

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>