bonjour
j'affiche une carte avec la projection EPSG:27572 :
1 2 3 4 5 6 7 8
| map = new OpenLayers.Map( 'map', {
controls:[
myNavControl,
maxExtent: maxextent,
maxResolution: "auto",
units: "m",
projection: new OpenLayers.Projection("EPSG:27572"),
} ); |
et j'ai besoin de transformer les coordonnées de chaque
point cliqué dans la projection OpenLayers.Projection.CRS84 soit :
1 2 3
| onclick: function(e) {
var lonlat = map.getLonLatFromViewPortPx(e.xy).transform(map.getProjection(), OpenLayers.Projection.CRS84);
... |
je constate que le point n'est pas projeté : il reste dans sa projection
d'origine (EPSG:27572)
si je trace la valeur de OpenLayers.Projection.CRS84 :
console.log(" OpenLayers.Projection.CRS84 "+ OpenLayers.Projection.CRS84);
j'obtiens :
OpenLayers.Projection.CRS84 undefined
de même, si je prends l'exemple suivant :
1 2 3
|
var position=new OpenLayers.LonLat(5.01181, 47.37080);
position.transform(OpenLayers.Projection.CRS84, map.getProjection()); |
le navigateur me signale aussi que la projection source, à savoir
OpenLayers.Projection.CRS84, est indéfinie
faut-il utiliser proj4js ?
merci d'avance
Jean-Marie
Partager