Dans le fichier json d'un type d'objet, quel paramètre doit-on ajouter afin de personnaliser le marker (ou sa couleur) de chaque instance d'objet selon un paramètre de sa table (une date, ...) ?
Sinon, pour personnaliser le marker d’un point via le json, il suffit de changer [(#LOGO_GIS|gis_icon_properties)] en [(#CHEMIN{images/marker_perso.png}|balise_img|gis_icon_properties)].
Cf Donc, dans ton json, tu fais ton test et en fonction du résultat, tu changes le chemin du marker.
Donc, dans ton json, tu fais ton test et en fonction du résultat, tu changes le chemin du marker.
jean marie
Le 09/10/2018 à 08:05, Pierre KUHN a écrit :
Bonjour,
Si tu as des mots clef sur tes points, tu peux géré avec l'icone du mots par exemple.
Le mar. 9 oct. 2018 à 00:17, Stephane Santon <m.spiprezo@santonum.eu <mailto:m.spiprezo@santonum.eu>> a écrit :
Bonjour,
Dans le fichier json d'un type d'objet, quel paramètre doit-on ajouter
afin de personnaliser le marker (ou sa couleur) de chaque instance
d'objet selon un paramètre de sa table (une date, ...) ?
super,
ça permet probablement d'obtenir des markers de couleurs différentes dans une carte gis
avec un seul svg stylé différemment pour chaque usage.
JL
Dans le fichier json d’un type d’objet, quel paramètre doit-on ajouter
afin de personnaliser le marker (ou sa couleur) de chaque instance
d’objet selon un paramètre de sa table (une date, …) ?
super,
ça permet probablement d'obtenir des markers de couleurs différentes dans une carte gis
avec un seul svg stylé différemment pour chaque usage.
JL
Donc en fait oui mais un peut bêtement, c'est a dire on ne peut utiliser dans leaflet que le svg comme une image, donc sans pouvoir styler autant vu que c'est une ressource externe et pas inclue dans le dom.
cela dit j'ai donc fait quelques recherche et y'a un plugin extension pour leaflet vectorMarkers, et une demo
la c'est déjà beaucoup plus facile d'utiliser même un sprite de symbols si besoins, vu que l'on peut modifier pour passer un svg:use si on veut.
super, ça permet probablement d'obtenir des markers de couleurs différentes dans une carte gis
avec un seul svg stylé différemment pour chaque usage.
Donc en fait oui mais un peut bêtement, c'est a dire on ne peut utiliser dans leaflet que le svg comme une image, donc sans pouvoir styler autant vu que c'est une ressource externe et pas inclue dans le dom.
Effectivement, mais (aprés qq recherche aussi) on peut encoder inline le source du svg
avec base64
iconUrl: 'data:image/svg+xml;base64,' + btoa('<svg>ici source du svg</svg>');
cela dit j'ai donc fait quelques recherche et y'a un plugin extension pour leaflet vectorMarkers, et une demo
https://codepen.io/anon/pen/Jdayb
la c'est déjà beaucoup plus facile d'utiliser même un sprite de symbols si besoins, vu que l'on peut modifier pour passer un svg:use si on veut.
Le mer. 10 oct. 2018 à 10:13, JLuc <jluc@no-log.org> a écrit :
A propos, est-ce qu’on peut utiliser un SVG en marker GIS ?
A priori ça marche pour leaflet, donc ça devrait passer avec gis https://codepen.io/mistergraphx/pen/aaVyvG
super, ça permet probablement d’obtenir des markers de couleurs différentes dans une carte gis
avec un seul svg stylé différemment pour chaque usage.
Donc en fait oui mais un peut bêtement, c’est a dire on ne peut utiliser dans leaflet que le svg comme une image, donc
sans pouvoir styler autant vu que c’est une ressource externe et pas inclue dans le dom.
Effectivement, mais (aprés qq recherche aussi) on peut encoder inline le source du svg
avec base64
iconUrl: ‹ data:image/svg+xml;base64, › + btoa(‹ ›);
cela dit j’ai donc fait quelques recherche et y’a un plugin extension pour leaflet vectorMarkers, et une demo
https://codepen.io/anon/pen/Jdayb
la c’est déjà beaucoup plus facile d’utiliser même un sprite de symbols si besoins, vu que l’on peut modifier pour
passer un svg:use si on veut.
ou utiliser les filtres images de spip. Alternatives to
[(#CHEMIN{css/masque.png}|image_aplatir{png,#COULEUR}|image_masque{css/defaut.png}|gis_icon_properties)]
Oui mais utiliser des marqueurs svg éviterait de générer tous ces png
Le svg qui donne le même marqueur fait 500 à 800 octets au lieu de 5 à 8ko pour le png.
La plupart des cartes n'ont pas énormément de marqueurs,
mais le svg a aussi des intérêts en lui-même : vectoriel et potentiellement dynamique.
Je disais on peut changer la couleur du svg dans les différents contextes par css extérieure :
.la_classe_contexte svg {fill: #COULEUR}
mais dans la mesure où on inline le svg ce serait plus simple d'ajouter le "fill: #COULEUR"
inline dans son source à chaque usage (et il n'y aurait plus besoin de styler par css).
Oui mais utiliser des marqueurs svg éviterait de générer tous ces png
Le svg qui donne le même marqueur fait 500 à 800 octets au lieu de 5 à 8ko pour le png.
La plupart des cartes n’ont pas énormément de marqueurs,
mais le svg a aussi des intérêts en lui-même : vectoriel et potentiellement dynamique.
Je disais on peut changer la couleur du svg dans les différents contextes par css extérieure :
.la_classe_contexte svg {fill: #COULEUR}
mais dans la mesure où on inline le svg ce serait plus simple d’ajouter le « fill: #COULEUR »
inline dans son source à chaque usage (et il n’y aurait plus besoin de styler par css).
Le mar. 9 oct. 2018 à 00:17, Stephane Santon <m.spiprezo@santonum.eu Dans le fichier json d'un type d'objet, quel paramètre doit-on ajouter
afin de personnaliser le marker (ou sa couleur) de chaque instance
d'objet selon un paramètre de sa table (une date, ...) ?
Je disais on peut changer la couleur du svg dans les différents contextes par css extérieure :
.la_classe_contexte svg {fill: #COULEUR}
mais dans la mesure où on inline le svg ce serait plus simple d'ajouter le "fill: #COULEUR"
inline dans son source à chaque usage (et il n'y aurait plus besoin de styler par css).
Avec GIS, gis_icon_properties n'accepte pas les SVG.
Ce serait possible de lui faire accepter... avec peut être des contraintes sur les tailles,
ou d'en écrire un autre dédié SVG.
En attendant, ça marche en remplaçant [(#LOGO_GIS|gis_icon_properties)]
par l'insertion directe des propriétés pour le svg :
Là c'est un marqueur svg uni, dont la couleur dépend d'un #GET{couleur} précalculé,
et j'ai enlevé l'ombre (on pourrait la mettre dans le marqueur plutôt ?)
J'ai aussi essayé avec urlencode mais faudrait insister plus.