Le 31 janvier 2012 14:25, Christian Quest <cqu...@openstreetmap.fr> a écrit :
> "label" ne devrait-il pas définir que la position à utiliser de
> préférence par le moteur de rendu et pas le nom (le libellé) en lui
> même sauf si il devait être différent du "name" qui se trouve dans la
> relation parente ?
>
> Ca ne vous semble pas plus logique vu comme ça ?

Entièrement d'accord. Y compris sur le "name" (et ses traductions) qui
doit alors remplacer celui de la relation quand les deux sont
présents.

Si on va plus loin les "labels" ne devraient pas être limités à un
seul nœud: ce pourrait être un segment ou une courbe, utile pour
positionner correctement les noms de massifs montagneux par exemple,
ou le nom des côtes ("Côte de granit rose" par exemple), surtout quand
ils ne sont pas associés à une zone fermée précisément géolocalisée
(massifs montagneux, côtes et baies, plages...) :

Le trait indique alors que le label devrait être écrit tout le long de
cette courbe, et pas seulement centré sur un seul point, à une taille
trop petite par rapport à ce qu'ils décrivent réellement.

Le label pourrait aussi indiquer qune indication éventuelle de la
tolérance admissible pour le déplacement (en cas de collision entre
labels distincts, si le rendu ne rend pas certains labels
transparents), cependant ce n'est pas forcément nécessaire car alors
cette tolérance doit pouvoir correspondre à une surface fermée (même
avec des contours sommaires de faible résolution).

OSM a encore du boulot pour définir des règles permettant d'aider les
logiciels de rendu à placer (et aussi dimensionner) correctement tous
les labels, indépendamment des styles qu'on leur applique (couleurs,
transparence, police utilisée, effets de style comme des glyphes
détourés), tous ces styles étant propres aux moteurs de rendus (qui
peuvent ignorer le placement amélioré cependant en utilisant qu'un
point central).


Juste une idée "comme ça" :

Si on place dans la base un objet pour le label, il doit avoir une
géométrie (nœud, chemin, voire surface pour les tolérances de
placement même si ce n'est pas utile si le label est associé à une
relation de surface). Cette géométrie elle-même peut ne pas être
visible sur la carte (aucun trait ou point visible, seul le texte du
label apparaît au placement indiqué) ; c'est donc un objet séparé.

Si cet objet ne correspond pas à un objet réel possédant d'autres
attributs à visualiser, il devrait être marqué comme étant de
"type=label" afin d'indiquer justement de ne pas dessiner cette
géométrie (pas de trait, pas de remplissage de la zone de tolérance,
pas de hachurage, pas de symbole centré sur le nœud désigné comme
géométrie...) mais seulement le texte associé.

Une règle supplémentaire devrait être que cet objet de "type=label"
doit être associé au maximum à un et un seul autre objet de type
géométrique différent (un label de géométrie surface/multipolygone
peut être associé à un noeud ou un chemin, mais pas à une autre
surface/multipolygone; un label de géométrie nœud peut être associé à
un chemin ou une surface mais pas un nœud). Sinon ses attributs sont
redondants et doivent être remontés directement dans l'objet réel qui
le référence (sauf le "type=label").

Un label objet de "type=label" ne devrait pas exister seul, sinon
c'est qu'il doit être d'un autre type plus descriptif (dans ce cas on
enlève son attribut "type=label" mais il faut indiquer le genre
d'objet qu'il désigne, avec d'autres attributs géographiques).

_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à