[OSM-talk-fr] Proposition de schéma de tags pour améliorer la cartographie des arbres

Frédéric Rodrigo fred.rodrigo at gmail.com
Mar 31 Mar 22:02:41 UTC 2015


Bonjour,

Suite aux discussions très intéressantes sur le la façon de tagger les 
bâtiments qui penchent (à l'extérieur, comme à l'intérieur) et également 
aux éclairages pertinents de Mr. Verdy sur la question, il m'a paru 
clair qu'il était possible de se baser sur ce même principe pour 
l'appliquer à la micro-cartographie des arbres.

Jusqu'à présent pour cartographie un arbre on utilise : natural=tree 
adjoint éventuellement de tags pour en décrire la nature, le genre ou 
l'espèce (genus=*, species=*, taxon=*).
Une autre partie des tag permettent de d'écrire l'instance de l'arbre : 
circumference=*, height=*  et même l'age. Cependant cela ne permet 
toujours d'avoir une idée plus précise de ce à quoi ressemble l'arbre.

Une tentative de cartographie des arbres en 3D est disponible sur le 
wiki, où l'on peut décrire la forme générale de l'arbre et l'inclinaison 
du tronc, mais ce n'est pas suffisant :
http://wiki.openstreetmap.org/wiki/Tree_table

Ce que je propose, donc en partant de l'idée des bâtiments inclinés, 
c'est de décrire les arbres de façon arborescente (je sais elle est 
facile ;) ).

On commence donc par décrire le tronc, longueur, direction et 
l'inclinaison :
- tree:trunk:length=* (en m par défaut, mais d'autres unités restent 
bien sûr possible, c'est important)
- tree:trunk:direction=* (en degré par rapport au nord, dans le sens 
anti-horaire, c'est plus naturel par rapport à l'orientation de la 
végétation vis-à-vis de la course du soleil, mais c'est du détail), si 
le tronc est parfaitement droit, et donc que la direction est de 0° on 
peut l'omettre.
- tree:trunk:inclination=* (en degré, idem omettable si pas 
d'inclinaison, l’inclinaison doit être absolue par rapport à 
l'horizontale, et pas rapport à l'inclinaison du sol bien sûr !)
À noter pour Omsose, s'il y a une inclinaison il y a forcément une 
direction (et réciproquement).

Puis les branches ou la suite du tronc :
- tree:trunk:trunk:length=*
- tree:trunk:trunk:direction=* (en degré par rapport au nord, 
c'est-à-dire de façon absolue, ou alors de façon relative à la direction 
du segment précédent en préfixant le nombre par « + » ou « - »).
- tree:trunk:trunk:inclination=*, idem, simple combinaison de 
tree:trunk:trunk:direction=* et tree:trunk:inclination=*.

Et pour chaque branche :
- tree:trunk:branch[X]:length=*
- tree:trunk:branch[X]:direction=*
- tree:trunk:branch[X]:inclination=*
Il faut remplacer X par un numéro d'ordre sur le nœud, pas besoin 
d'ordre particulier, juste besoin de les numéroter pour pouvoir suivre 
la branche. Cela dépend des espèces, certaines espèces n'ont pas plus 
d'une seule branche par nœud, on peut dans ce cas également ne pas 
mentionner le numéro d'ordre.

L'avantage c'est que l'on peut ainsi continuer ou s'arrêter quand on 
veut, on est en plein dans l'idée simple d'OSM, contribution itérative. 
Un premier contributeur ne cartographie que les grosses branches, puis 
un autre peut aller plus loin ou mettre à jour parce que de nouvelles 
branches ont poussées.

Pour l'exemple :
tree:trunk:length=4.32
tree:trunk:direction=7.7
tree:trunk:inclination=2.4
tree:trunk:trunk:length=1.28
tree:trunk:trunk:direction=-1.8
tree:trunk:trunk:inclination=+2.6
tree:trunk:branch[1]:length=0.8
tree:trunk:branch[1]:direction=+5.7
tree:trunk:branch[1]:inclination=-9.8
tree:trunk:branch[1]:branch[1]:length=0.5
tree:trunk:branch[1]:branch[1]:direction=+6.8
tree:trunk:branch[1]:branch[1]:inclination=+3.2
tree:trunk:branch[1]:branch[2]:length=0.5
tree:trunk:branch[1]:branch[2]:direction=+6.8
tree:trunk:branch[1]:branch[2]:inclination=+3.2
tree:trunk:branch[2]:length=0.6
tree:trunk:branch[2]:direction=-9.4
tree:trunk:branch[2]:inclination=+4.6
tree:trunk:branch[2]:branch:length=0.2
tree:trunk:branch[2]:branch:direction=+4.9
tree:trunk:branch[2]:branch:inclination=+4.8
tree:trunk:trunk:trunk:length=0.8
tree:trunk:trunk:trunk:direction=+8.6
tree:trunk:trunk:trunk:inclination=-7.8

L'avantage de cette façon de faire est de pouvoir rester concis, un seul 
nœud suffit, pas besoin de cartographier les branches avec des ways.

Certains vont penser que ce n'est que pour le rendu, mais on peut faire 
bien plus de choses avec, par exemple du calcul d'itinéraires ou 
d’ensoleillement par ombre porté sur le feuillage en fonction de 
l'espèce de l'arbre.

J'espère que des moteurs 3D comme F4 pourront rapidement prendre en 
compte cette approche, le résultat sera quand même beaucoup plus réaliste.

Je suis ouvert à vos remarques avant de faire une proposition en bon et 
due forme sur le wiki puis sur la liste tagging.

Note, il faudra maintenant aller mapper avec des boussoles, des niveaux 
et des compas ; mais nos chers smartphones font déjà tout ça !

Frédéric.




Plus d'informations sur la liste de diffusion Talk-fr