Le 21/06/2017 à 12:43, Christian Quest - cqu...@openstreetmap.fr a écrit :
Une carte papier a deux différences principales à mon avis par rapport
à une carte en ligne:
(...)
- on travaille sur une emprise limitée (ça simplifie)
Mais dans un cadre limité (ça complique).
Car si sur une tuile tu peux couper un texte, par exemple mettre
l'étiquette Brest à l'ouest de la ville et Strasbourg au nord (pour
mettre Kehl au sud), sur une carte papier de la France tu ne peux le
faire (sauf à autoriser l'utilisation des marges le cas échéant).
Sur les cartes nautiques marines électroniques, il faut que les données
soient visibles à l'écran mais il n'y a pas à ma connaissance de feuille
de style qui le fasse (déjà pour les règles d'affichages ce sont des
procédures style ordres à des imprimantes).
World Wind (qui existe en Java comme en Javascript) a de bons systèmes
de placements de labels.
Là encore pas vraiment de la feuille de style et peut-être quelque chose
à ajouter à Mapnik pour styler comme ça (*) mais je connais trop peu
Mapnik pour être affirmatif.
Quand une feuille de style affichera l"Avenue Maréchal Jean de Lattre de
Tassigny" sur une rue courte et tordue (par exemple Av. M^al T^gny )...
Au niveau de zoom 19, le rendu par défaut
<http://www.openstreetmap.org/query?lat=47.88031&lon=6.76335> comme le
rendu OSM FR
<http://layers.openstreetmap.fr/?lat=47.88031&lon=6.76335&zoom=19>
n'arrive pas à afficher une "simple" Place Maréchal de Lattre de
Tassigny
<http://www.openstreetmap.org/query?lat=47.88031&lon=6.76335#map=19/47.88040/6.76338>.
Le rendu HOT
<http://layers.openstreetmap.fr/?lat=47.88031&lon=6.76335&zoom=19&layers=000B0FFFFFFFFFFFFFFFFFFFFFF>
y arrive.
Si tu as un plan avec l'index des rues et un rendu style OSM, ne pas
avoir le nom de la place sur la carte mais dans l'index des rues un "Pl.
Maréchal de Lattre de Tassigny" en disons M9, et que tu vois un mémorial
Maréchal de Lattre de Tassigny au milieu d'une place dans le carreau M9,
tu vas deviner.
C'est un peu l'exemple de JB avec ses deux parkings qu'il rassemble
graphiquement et déplace : savoir qu'il y a un parking à côté du
belvédère, c'est ce qui intéresse l'usager. Sur place il verra bien où
est exactement le parking (ici les parkings).
Ce genre de truc (ne pas afficher des icônes ou des textes) en fonction
du contexte ça semble difficilement automatisable.
Par contre j'aime l'idée d'avoir une liste d'objets pas affichés (ou
partiellement affichés) proposés à un traitement ultérieur.
Et la possibilité de se rappeler les recettes de cuisine (comme JB le
propose), par exemple pour afficher des traits de rappels en semi
automatique via QGis et Postgres
<https://gisunchained.wordpress.com/2015/01/12/etiquetas-com-guias-em-qgis-e-postgis-labels-leading-lines-with-qgis-and-postgis/>.
Certaines abréviations peuvent être utilisées mais pas partout (Rue de
l'Avenue peut devenir r. de l'Avenue pas Rue de l'Av.) et on a la
contrainte de la langue (Rue * en français = r. * si nécessaire, pas
dans d'autres langues).
(*) de mémoire le système calcule l'empreinte (ou des empreintes
possibles : repliement de lignes ou pas suivant les besoins) et les
positions possibles. Par exemple pour une ville le nom doit être
idéalement au nord mais si besoin on peut ne pas centrer, ou le placer
au sud, à l'est ou à l'ouest.
Voir mettre des traits de report pour signaler que le texte est déplacé
par rapport à l'icône (ou le polygone) ? C'est un calcul de masque.
Donc il place les icônes (dans un ordre prédéterminé) puis les
différentes étiquettes en acceptant plus ou moins les recouvrements (si
le texte est détouré par un halo blanc semi transparent, on peut par
exemple avoir un P de Parking dans le halo mais pas un texte) et en
acceptant un certain nombre de positions possibles.
Mettons que l'on affiche Strasbourg au centre. Quand on veut afficher
Kehl ça ne passe pas <www.openstreetmap.org/#map=9/48.5675/7.8662> (au
centre, ou aux 3 points cardinaux). L'algo essaye alors de placer
Strasbourg à l'ouest. Ça passe donc on a une ville de plus d'affichée et
sur une carte de passage frontière, les deux villes sont importante.
Pour les traits reliant les étiquettes, sous QGis il y a le greffon
"Easy custom labelling"
<https://georezo.net/forum/viewtopic.php?id=98277>. Je n'ai pas testé.
Sinon sur QGis il y a pas mal d'infos dans la doc
<http://planet.qgis.org/planet/tag/labeling/> autant sur des greffons
que sur la bonne utilisation de l'existant.
Bon, je relève les copies dans 4h, c'est l'époque ;-)
Jean-Yvon
_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-fr