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 Wed 14 January 2015 09:34

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

StyleMap pour un polygone

Bonjour,

J’essaye désespérément de modifier le style d'un polygone sans succès pouvez-vous m'aider, voici mon code :

Code:

   
var style = new OpenLayers.Style({
fillColor: "#FCC764",
fillOpacity: 0.5,
strokeColor: "#E5BE12",
strokeWidth: 1,
});

var carte = new OpenLayers.Layer.WMS("carte","http://cartogeb.web.net/cgi-bin/mapserv?map=/home/site/www/site/htdocs/propriete.map&",
                        {styleMap: style},
                        {layers: carte',
                        transparent: true,
                        format:'image/png'},
                        {isBaseLayer: false, visibility: true});

Merci

Hors ligne

 

#2 Wed 14 January 2015 10:45

jlebouvier
Juste Inscrit !
Date d'inscription: 27 Feb 2007
Messages: 8

Re: StyleMap pour un polygone

Bonjour,

C'est dans le mapfile (propriete.map) qu'il faut paramétrer le style et non pas dans Openlayers.


Bonne journée

Hors ligne

 

#3 Wed 14 January 2015 11:47

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: StyleMap pour un polygone

Le problème c'est que dans le mapfile les possibilités sont très limitées pour formater une couche. Je sais que Openlayer donne cette possibilité avec beaucoup plus de souplesse.

Hors ligne

 

#4 Wed 14 January 2015 12:05

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: StyleMap pour un polygone

Je pense avoir la solution à mon problème que je partage avec vous.
J'ai passé ma couche en "WFS" au lieu "WMS", j'ai donc modifié les différents paramètre en conséquence, voici ce nouveau code :

Code:

var carte = new OpenLayers.Layer.WFS("carte","http://site.web.net/cgi-bin/mapserv?map=/home/site/www/site/htdocs/propriete.map&",
                       {typename: "carte"},{isBaseLayer: true, extractAttributes: true,
                       styleMap: new OpenLayers.StyleMap({
                       strokeColor: "red",
                       fillColor : "black",
                       strokeWidth: 5,
                       strokeOpacity: 1,
                       fillOpacity: 0})
                       });

Naturellement il faut déclarer le "WFS" dans le mapfil

Merci à tous

Dernière modification par geobrie (Wed 14 January 2015 14:32)

Hors ligne

 

#5 Wed 14 January 2015 17:37

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

Re: StyleMap pour un polygone

Bonsoir,

geobrie a écrit:

Le problème c'est que dans le mapfile les possibilités sont très limitées pour formater une couche. Je sais que Openlayer donne cette possibilité avec beaucoup plus de souplesse.


Ah, un exemple ? J'aurai pensé le contraire 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

 

#6 Wed 14 January 2015 17:41

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: StyleMap pour un polygone

Bonjour Yves,

Par exemple dans mapserver on peut difficilement définir l’épaisseur d'un trait pour un polygone, même la gestion des étiquettes est plus aisée sous Openlayer.

Hors ligne

 

#7 Wed 14 January 2015 17:45

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: StyleMap pour un polygone

Voici mon exemple avec la gestion des étiquettes :

Code:

var carte = new OpenLayers.Layer.WFS("carte","http://site.web.net/cgi-bin/mapserv?map=/home/site/www/site/htdocs/propriete.map&", 
                       {srsName: "EPSG:2154", typename: "carte"},{isBaseLayer: false, extractAttributes: true,
                       styleMap: new OpenLayers.StyleMap({
                       strokeColor: "red",
                       fillColor : "black",
                       strokeWidth: 5,
                       strokeOpacity: 1,
                       fillOpacity: 0,
                       label: "${parcelle}",
                       fontColor: "red",
                       fontWeight: "bold",
                       labelAlign: "center",
                       labelOutlineColor: "white", 
                       labelOutlineWidth: 4 
                       })
                       });

Mon souci maintenant est que j'essaye désespérément de re projeter cette couche en "EPSG:3857" alors que le srs d'origine est "EPSG:2154" (L93). Malgré les exemples sur le Web je n'y arrive pas.

Hors ligne

 

#8 Wed 14 January 2015 19:35

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

Re: StyleMap pour un polygone

Bonsoir,

geobrie a écrit:

Bonjour Yves,

Par exemple dans mapserver on peut difficilement définir l’épaisseur d'un trait pour un polygone, même la gestion des étiquettes est plus aisée sous Openlayer.


Il est plus facile de mettre en cause un logiciel que ses compétences wink

Code:

STYLE
  WIDTH 3
  COLOR 255 0 0
  OUTLINECOLOR 255 255 255
END

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

 

#9 Thu 15 January 2015 08:50

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: StyleMap pour un polygone

Bonjour Yves,
Crois-moi je suis loin de mettre mes compétences en cause, il suffit de lire mes messages pour se rendre compte que je suis réaliste sur mon niveau assez faible dans ce domaine. C'est bien pour cette raison que je fais aussi souvent appel à vous, maintenant pour Mapserver je fais mon mea-culpa, effectivement je pensais plus simple de gérer ces paramètres directement sous Openlayer, à priori c'est le cas également sous Mapserver.

Pour continuer sur le thème de l'ignorance, pourrais-tu me donner des pistes pour re-projeter une couche WFS car sur le web il y a tout et son contraire sur ce sujet. J'ai fait beaucoup de test sans succès.

Merci à toi

Hors ligne

 

Pied de page des forums

Powered by FluxBB