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 Mon 30 June 2014 22:16

nakatak
Juste Inscrit !
Date d'inscription: 30 Jun 2014
Messages: 3

Geoserver-WMS : Colorier Polygone selectionné

Bonsoir à tous !

Je travaille sur un projet de Webmapping faisant intervenir GeoServer et OpenLayers. Ayant cherché un peu partout avant de venir poser ma question sur ce forum, je vous prie de bien vouloir croire en mon implication.


1er Objectif: Afficher les communes d'un département et permettre de "colorier" la commune sélectionnée.

Pistes :
-> WFS : Utiliser la stratégie Filter de WFS . Lorsque le clic event a lieu, une requête WFS est envoyé au serveur qui ne va renvoyer que le polygone selectionné grâce au filtre spécifié.
-> WMS : Le service WMS ne renvoyant que des images, l'idée serait d'ajouter une couche au dessus de la couche de base  ou seule la commune selectionnee est visible. De la même manière, on utiliserait un filtre dans un SLD.

Quelle méthode vous semble judicieuse ? Connaissez-vous d'autres solutions ?

2eme Objectif : Avoir des communes de couleur différente selon un paramètre extèrieur (par exemple : nombre d'habitants, sachant qu'il n'est pas attribut de la couche commune) présent dans un fichier à part .

Même pistes que 1.

Je vous remercie par avance pour l'intérêt que vous porterez à mon problème.

Cordialement

nakatak

Hors ligne

 

#2 Mon 30 June 2014 22:35

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: Geoserver-WMS : Colorier Polygone selectionné

Bonsoir,

#1 : une requête WMS GetFeatureInfo au format gml qui permet de récupérer la géométrie, solution alternative au WFS pure. Les deux solutions proposées sont correctes. La différence porte sur l'endroit où va se faire la symbologie : côté client (WFS) ou côté serveur (WMS)

#2 : il faut faire une couche sous forme de vue (quand tu crées une nouvelle couche, en haut de la liste des tables proposées tu peux choisir de créer une vue dans GeoServer). Tu peux écrire une requête et faire une jointure entre deux tables et te servir du résultat comme source de données.

Il y a aussi la possibilité d'utiliser un paramètre dans l'url pour rendre la requête dynamique en utilisant la variable dans la requête mais cela n'est pas demandé wink

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#3 Tue 01 July 2014 22:39

nakatak
Juste Inscrit !
Date d'inscription: 30 Jun 2014
Messages: 3

Re: Geoserver-WMS : Colorier Polygone selectionné

Merci beaucoup pour ton aide Yves. Je vais voir ce que ça donne .

Hors ligne

 

#4 Thu 03 July 2014 17:35

nakatak
Juste Inscrit !
Date d'inscription: 30 Jun 2014
Messages: 3

Re: Geoserver-WMS : Colorier Polygone selectionné

Bonsoir,

J'ai réussi à remplir la deuxième tâche en envoyant une requête WMS avec un filtre CQL, ce qui m'a permis d'obtenir un overlay avec un style différent comme je le souhaitais.

Pour la première en revanche, j'ai essayé de suivre le conseil de Yves en utilisant une requête WMS GetFeatureInfo avec un format de retour gml. Si je comprends bien, il faut extraire les informations (géometrie + attributs) contenus dans event.features[i] en utilisant la fonction "read" d'un parser OpenLayers.Format.GML . La valeur de retour de cette fonction correspond à l'objet Feature que l'on va ajouter à notre couche OpenLayers.Layer.Vector. Je voudrai bien savoir si cela est juste car j'obtiens des erreurs que je n'arrive pas à résoudre.

Merci d'avance,

nakatak

Hors ligne

 

Pied de page des forums

Powered by FluxBB