Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Printemps des cartes 2024

#1 Tue 26 December 2017 21:04

kenji
Juste Inscrit !
Date d'inscription: 25 Dec 2017
Messages: 3

Afficher une couche sur carte du monde via pageweb openlayer/geoserver

bjr et joyeux noel a tous;
je suis nouveau dans les SIG et j'ai un souci.
J'ai importer d'abord dans Postgis les couches 5 suivantes: regions, departements,usines , pipeline_chad__cmr, dangers
Pour publier ces couches dans une page web grace à un serveur web wampserver, et geoserver
je procède par html et javascript.
Ainsi j'ai créé les fichier pipeline.html et carte.js
voici le code de carte.js:

function init() {
    var osmLayer1 = new OpenLayers.Layer.OSM();
    var regions = new OpenLayers.Layer.WMS( "regions", "http://localhost:8080/geoserver/pipeline/wms",{layers:'regions',transparent:"true"});
    map.addLayers([osmLayer1,regions]);
    map.zoomToMaxExtent();
    map.addControl(new OpenLayers.Control.Navigation());
    map.addControl(new OpenLayers.Control.PanZoomBar());
    map.addControl(new OpenLayers.Control.OverviewMap());
    map.addControl(new OpenLayers.Control.MousePosition());
    map.addControl(new OpenLayers.Control.LayerSwitcher());
}

Ce code marche bien pour une seule couche region à afficher sur la carte du monde (voir limage img2 en pièce jointe)

mais quand je veux afficher plusieurs couches  superposée exemple 3 couches(regions, departement,usines) sur la carte du monde cela ne marche pas. même apres avoir modifié le code:
var osmLayer1 = new OpenLayers.Layer.OSM();
var all= new OpenLayers.Layer.WMS("regions, departements, usines", "http://localhost:8080/geoserver/pipelinepg/wms",
        {layers:'regions, departements, usines', transparent:"true"}
        );
map.addLayers([osmLayer1,all]);

Merci pour votre aide

Hors ligne

 

#2 Tue 26 December 2017 22:51

ThomasG
Membre
Lieu: Nantes
Date d'inscription: 9 Sep 2005
Messages: 940
Site web

Re: Afficher une couche sur carte du monde via pageweb openlayer/geoserver

Bonjour,

Avez-vous enlevé les espaces entre les noms des "layers" comme ci-dessous ?

Code:

var all= new OpenLayers.Layer.WMS("regions,departements,usines", "http://localhost:8080/geoserver/pipelinepg/wms",
        {layers:'regions, departements, usines', transparent:"true"}
        );

Avez-vous essayé de séparer les couches (pour debugger en particulier) en faisant?

var regions = new OpenLayers.Layer.WMS( "regions", "http://localhost:8080/geoserver/pipeline/wms",{layers:'regions',transparent:"true"});
var departements = new OpenLayers.Layer.WMS( "departements", "http://localhost:8080/geoserver/pipeline/wms",{layers:'departements',transparent:"true"});
var usines = new OpenLayers.Layer.WMS( "usines", "http://localhost:8080/geoserver/pipeline/wms",{layers:'usines',transparent:"true"});

map.addLayers([regions, departements, usines]);


Une autre remarque est de passer à la nouvelle version de OpenLayers: le code que vous utilisez est lié à OpenLayers 2 qui fonctionne encore mais n'est plus maintenu du tout.

Ne connaissant pas les circonstances de votre projet, à vous de voir ce que vous faites de ce dernier conseil de ma part.


Cordialement

Thomas

Hors ligne

 

#3 Wed 03 January 2018 17:10

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2877
Site web

Re: Afficher une couche sur carte du monde via pageweb openlayer/geoserver

à noter que Kenji a le même problème que... Benji :
http://www.forumsig.org/showthread.php/ … openlayers

et qu'il est étudiant :
http://www.forumsig.org/showthread.php/ … post351250

et que vu l'intitulé de sa formation, il doit être étudiant du Master M2 IASIG de l'AUF
(ce qui semble être confirmé par le fait que son jeu de données porte sur l'oléoduc Tchad - Cameroun)


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

Hors ligne

 

Pied de page des forums

Powered by FluxBB