[OpenLayers-Users] Google basemap with overlay layer

Christopher Schmidt crschmidt at metacarta.com
Mon Feb 9 09:28:48 EST 2009


On Mon, Feb 09, 2009 at 03:15:17PM +0100, Marcello Brunaldi wrote:
> Hello everyone
> I have several layers wms loaded directly from Geoserver, I can not map
> overlapping the basic google! It only shows google maps and layers do not
> see, the markers but instead appear not correspond to real coordinates.

1. Your Google layer doesn't have the spherical mercator option set.
2. Your map and layer projection are EPSG:4326, which is not correct.

I recommend reading:

  http://docs.openlayers.org/library/spherical_mercator

And understanding it better first.

-- Chris

> This example of my code
> 
> function init()
> {
>         options={
>                 projection: "EPSG:4326",
>                 units: "m",
>                 maxResolution: 156543.0339,
>                 maxExtent: new OpenLayers.Bounds(-20037508.34,
> -20037508.34,20037508.34, 20037508.34)
>             };
> 
>         //creo la mappa di base con i parametri
>         map = new OpenLayers.Map('map', options);
> 
>            var satellite = new OpenLayers.Layer.Google(
>                 "Google Satellite" ,
>                 {
>                 type: G_SATELLITE_MAP
>                 }
>             );
> 
> 
>         //creo i livelli con la zona unesco
>         aste = new OpenLayers.Layer.WMS(
>                 "TOPP aste",
>                 "http://localhost:8080/geoserver/wms?",
>                 {
>                    layers: 'topp:aste',
>                    styles: '',
>                    srs: 'EPSG:4326',
>                    format: 'image/png',
>                    tiled: 'true',
>                    tilesOrigin : "0,0",
>                    transparent: true
>                 },
>                 {
>                     'opacity': 0.5, 'isBaseLayer': false, 'wrapDateLine':
> true
>                 },
>                 {'reproject': true}
> 
>             );
> 
>         unesco = new OpenLayers.Layer.WMS(
>                 "TOPP unesco",
>                 "http://localhost:8080/geoserver/wms?",
>                 {
>                    layers: 'topp:unesco',
>                    styles: '',
>                    srs: 'EPSG:4326',
>                    format: 'image/png',
>                    tiled: 'true',
>                    tilesOrigin : "0,0",
>                    transparent: true
>                 },
>                 {
>                     'opacity': 0.5, 'isBaseLayer': true, 'wrapDateLine':
> true
>                 },
>                 {'reproject': true}
>             );
> 
> //these markers are created with GeoRSS xml
> 
> new1= [];
>     new1[0] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/blu.xml',
> {'icon':color[0]} );
>     new1[1] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/rosso.xml',
> {'icon':color[1]} );
>     new1[2] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/verde.xml',
> {'icon':color[2]} );
>     new1[3] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/giallo.xml',
> {'icon':color[3]} );
>     new1[4] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/marrone.xml',
> {'icon':color[4]} );
>     new1[5] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/arancio.xml',
> {'icon':color[5]} );
>     new1[6] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/celeste.xml',
> {'icon':color[6]} );
>     new1[7] = new OpenLayers.Layer.GeoRSS( 'GeoRSS', 'georss/viola.xml',
> {'icon':color[7]} );
> 
> for (n=0; n < 8; n++)
>     {
>         map.addLayer(new1[n]);
>     }
> 
>     map.addLayers([satellite,unesco]);
> 
>     map.addControl(new OpenLayers.Control.LayerSwitcher());
>     loadsetmap();

> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users


-- 
Christopher Schmidt
MetaCarta



More information about the Users mailing list