banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 10 March 2015 09:05

viarn
Juste Inscrit !
Lieu: SAINT SYMPHORIEN D'OZON
Date d'inscription: 5 Dec 2008
Messages: 9

OpenLayers 2.14 - Problème de Projection

Bonjour à tous,

Comme pour beaucoup de monde j'ai beaucoup de mal avec les projections. J'ai parcouru plusieurs sujets, et plus j'en ai appris, moins j'en ai compris.

Je prépare un petit projet pour ma société, qui permettra aux clients de se localiser, via une couche google, d'afficher une carte géologique et d'afficher également les forages autour de chez eux.

Mais voilà il y a une couche IGN qui m'affiche des tuiles roses.
J'ai inspecté la requête et j'ai remarqué que dans la bbox passait 55000.44567 au lieu de 4.92 etc.
Voila ce que j'obtiens :
http://mapdmz.brgm.fr/cgi-bin/mapserv?m … HEIGHT=500
Voila ce que j'aimerais :
http://mapdmz.brgm.fr/cgi-bin/mapserv?m … HEIGHT=500

J'aimerais trouver un bon tuto, (peut-être qu'il y en a et que j'ai mal cherché), et en français.

Voici une partie de mon code, si qqun à des suggestions  ou des idées : je tiens à préciser que je n'ai pas de SIG et que j'utilise seulement OpenLayers 2.14.

Code:

        var zooom = 14;
    map = new OpenLayers.Map('map', {
        //projection: new OpenLayers.Projection("EPSG:900913"),
        projection: 'EPSG:3857',
        layers: [
        new OpenLayers.Layer.Google( //projection possible 3857
            "Google Satellite",
            {type: google.maps.MapTypeId.HYBRID, numZoomLevels: 20,sphericalMercator: true } //
        ),            
        new OpenLayers.Layer.Google( //projection possible 3857
            "Google Cartes",
            {numZoomLevels: 20,sphericalMercator: true}
        ),
        new OpenLayers.Layer.WMS( //projection possible 4326, 2154, 2972, 2975
            "Carte géologique",
            "http://geoservices.brgm.fr/geologie",
            {layers: 'SCAN_D_GEOL50', numZoomLevels: 20}
        ),
        new OpenLayers.Layer.WMS( //projection possible 2154, 27582
            "Carte IGN",
            "http://mapdmz.brgm.fr/cgi-bin/mapserv?map=/carto/infoterre/mapFiles/scan.map",
            {
                srs: 'EPSG:27582',
                displayProjection: "EPSG:4326",
                layers: 'SCAN25',
                format: 'image/Jpeg',
                isBaseLayer: true,
                visibility: true 
            }//,
            //{'reproject': true}
        ),
        new OpenLayers.Layer.WMS(
            "Forages d'eau existant",
            "http://geoservices.brgm.fr/geologie",
            {layers: 'BSS',  transparent: "true", format: "image/png"}
        )
        ],
        center: new OpenLayers.LonLat(lon, lat)
            .transform('EPSG:4326', 'EPSG:3857'),
            zoom: zooom
    });
    
    map.addControl(new OpenLayers.Control.LayerSwitcher({'div':OpenLayers.Util.getElement('layerswitcher')}));
    map.addControl(new OpenLayers.Control.Navigation());
    map.addControl(new OpenLayers.Control.MousePosition({
        separator: ' | ',
        numDigits: 6,
        emptyString: 'Hors de la carte',
        displayProjection: new OpenLayers.Projection("EPSG:4326")
        // EPSG:4326, CRS:84, urn:ogc:def:crs:EPSG:6.6:4326, EPSG:900913, EPSG:3857, EPSG:102113 and EPSG:102100
    }));
    map.addControl(new OpenLayers.Control.ScaleLine());
    zoomuser = map.zoom.toFixed();

Merci beaucoup si vous avez le temps de jeter un oeil.
Pour la visualisation en entier.
http://ozonforages.free.fr/cartes.htm

Vincent

Hors ligne

 

#2 Tue 10 March 2015 12:30

JF BEHM
Participant actif
Lieu: toulouse
Date d'inscription: 9 Aug 2013
Messages: 126
Site web

Re: OpenLayers 2.14 - Problème de Projection

Bonjour,
Effectivement, le problème des projections est récurant surtout dans le webmapping !
La carte OpenLayers doit être en PseudoMercator (EPSG:3857) et normalement toutes les couches qui sont ajoutées seront reprojetées en 3857 à condition que MapServer le permette !
Il faut définir toutes les projections qui pourront être demandées par le client (OpenLayers en l'occurence) dans le mapfile (bloc web).

Cordialement,


Jean-François Behm, formateur SIG, jf.behm@texte-a-enlever.idgeo.fr, formations@texte-a-enlever.idgeo.fr
IDGEO, www.idgeo.fr
Institut de Développement de la Géomatique  42, avenue de Général de Croutte - 31100 toulouse

Hors ligne

 

#3 Tue 10 March 2015 18:48

viarn
Juste Inscrit !
Lieu: SAINT SYMPHORIEN D'OZON
Date d'inscription: 5 Dec 2008
Messages: 9

Re: OpenLayers 2.14 - Problème de Projection

Bonsoir, je vous remercie pour votre réponse. Si je comprends bien je dois créer un mapfile avec openlayers plutôt que de définir dans chaque layer différentes projections. Faut-il que j'installe Mapserver pour ce faire ou par simple implémentation de code ?

Hors ligne

 

#4 Wed 11 March 2015 12:39

viarn
Juste Inscrit !
Lieu: SAINT SYMPHORIEN D'OZON
Date d'inscription: 5 Dec 2008
Messages: 9

Re: OpenLayers 2.14 - Problème de Projection

Bonjour à tous, bon j'ai contourné le problème des projections, ne sachant pas créer de Mapfile.
Je suis allé sur le site de l'IGN et j'ai créé une clé DEV pour travailler en localhost et une clé prod pour un affichage grand public sur le web.
Et la étrangement je n'ai plus de problème de projections.
Sur une adresse saisie, je peux choisir soit google, brgm, ign ou bien le cadastre sans problème et afficher les forages de la Banque du Sous Sol.
Et déplacer mon marker sans problème

Pour ceux qui veulent voir :
http://ozonforages.free.fr/cartetest.html

Merci quand même de votre aide.
Vincent

RESOLU

Hors ligne

 

#5 Wed 11 March 2015 13:51

VianneyD
Participant assidu
Date d'inscription: 30 May 2011
Messages: 153

Re: OpenLayers 2.14 - Problème de Projection

Bonjour,

Je pense que le problème n'était pas dû à la projection utilisée mais à l'absence de clé IGN valide.
Ce qui est étonnant car ta couche IGN semble être fournie par un service provenant du BRGM.
Peut-être que le fait de t'enregistrer sur le site de l'IGN a permis d'autoriser ton site comme referer...


Vianney Dugrain

Hors ligne

 

#6 Wed 11 March 2015 14:29

viarn
Juste Inscrit !
Lieu: SAINT SYMPHORIEN D'OZON
Date d'inscription: 5 Dec 2008
Messages: 9

Re: OpenLayers 2.14 - Problème de Projection

Bonjour, effectivement ma couche IGN vient bien d'un serveur du BRGM. Cependant dans cette solution il n'y a pas besoin de la fameuse clé API_KEY. Je pense que c'est un oubli du BRGM de retirer les cartes au moment ou l'IGN mettait en place ses fameuses clés. Pour être correct et ne pas avoir de problème je me suis inscris sur le site IGN et du coup l'appel des cartes est différent dans mon code javascript.

Dans mon appli de gestion commerciale en VB6 j'utilisais un composant webBrowser ou je codais en dur la requête passée au serveur, j'avais juste à rajouter l'emprise dans mes BBOX.

Dans le lien ci -dessous, pas besoin de la clé IGN.
http://mapdmz.brgm.fr/cgi-bin/mapserv?m … HEIGHT=500

Hors ligne

 

Pied de page des forums

Powered by FluxBB