[Spanish] Google maps (EPSG:900913) y Mapserver WMS(EPSG:4326) en openlayers

maximiliano riffo donoso maxyorate at gmail.com
Thu Mar 18 12:08:15 EDT 2010


hola a todos los de al lista
llevo unos dias tratando de de proyectar en openlayers con un base
layer de google maps y un Wms desde mapserver, como ya he averiguado
google trabaja EPSG:900913 y mi WMS esta en EPSG:4326, segun
ve encontrado he modificado el archivo archivo epsg, mapfile y
openlayers de la siguiente forma

Epsg:

## Google
<900913> +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0
+x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs <>

Mapfile

WEB
	IMAGEPATH "/tmp/images"
        IMAGEURL "tmp"
	METADATA
		"wms_srs" "EPSG:4326 EPSG:900913"
	END                # FIN METADATA
END                      # FIN WEB
PROJECTION
		"init=EPSG:900913"
END


y openlayers
esta de la siguiente forma

var map;

        // increase reload attempts
        OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3;

        function init(){
            var options = {
                projection: new OpenLayers.Projection("EPSG:900913"),
                units: "m",
                numZoomLevels: 18,
                maxResolution: 156543.0339,
                maxExtent: new OpenLayers.Bounds(-20037508, -20037508,
                                                 20037508, 20037508.34)
            };
            map = new OpenLayers.Map('map', options);

            // create Google Mercator layers


            var ghyb = new OpenLayers.Layer.Google(
                "Google Hybrid",
                {type: G_HYBRID_MAP, 'sphericalMercator': true,
'maxExtent': new
OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34)
}
            );




            // create WMS layer
            var wms = new OpenLayers.Layer.WMS(
                "Prueba",

"http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/Apache/htdocs/mapatile.map",
                {'layers': 'regiones', 'format':'image/png'},
                {
                    'opacity': 0.4, visibility: false,
                    'isBaseLayer': false,'wrapDateLine': true

                }

            );
		
		

            // create a vector layer for drawing
            var vector = new OpenLayers.Layer.Vector("Editable Vectors");

            map.addLayers([ ghyb,
                           wms, vector]);

						
            map.addControl(new OpenLayers.Control.LayerSwitcher());
            map.addControl(new OpenLayers.Control.EditingToolbar(vector));
            map.addControl(new OpenLayers.Control.Permalink());
            map.addControl(new OpenLayers.Control.MousePosition());
    if (!map.getCenter()) {map.zoomToMaxExtent()}
        }


Lo que he logrado es q me proyecta en google mi layers, pero demasiado corrido
estoy tratandode proyectar las regiones de chile en primera instancia,
pero me salen todas
entre africa y europa, he tratado de todas formas y aun no logro solucionar eso
 quisira saber si me pueden ayudar.

Muchas gracias y saludos

-- 
Maximiliano Riffo Donoso
Licenciatura en Ciencia de la Computación
DMCC - Facultad de Ciencia
Universidad de Santiago De chile


More information about the Spanish mailing list