[OSM-talk-fr] Importation des arbres municipaux sur Nice
Vincent Frison
vincent.frison at gmail.com
Dim 26 Juil 12:44:47 UTC 2015
Alors pour répondre à la question de Jérôme sur la gestion des conflits:
Avant je ne considérais que l'arbre existant le plus proche de l'arbre
importé. Mais comme je disais dans un post précédent: la gestion des "multi
matching trees" (ie. les arbres existants qui sont dans le rayon de
plusieurs arbres importés) est très basique puisque je met à jour l'élément
avec les valeurs du 1er arbre importé tout simplement (pour les autres
éléments importés je créé donc un nouvel élément).
Comme tu l'as remarqué Jérôme il y a aucun tag taxon ou genus sur
l'ensemble des arbres existants de Nice, ce qui est une mauvaise chose dans
l'absolu... mais plutôt une bonne chose pour mon import ! :p
Ceci dit on était pas à l'abri de cas problématiques, imaginons 2 arbres
importés I1, I2 et 3 arbres existants E1, E2, E3 (et que le rayon est de
5m).
I1<2m>E1
I1<3m>E2
I2<1m>E1
I2<4m>E3
Avant si je tombais d'abord sur I1 j'utilisais E1 pour le mettre à jour et
laissait E2 tel quel. Sauf que I2 est encore plus proche de E1, il devrait
être donc être mis à jour pour I2 et c'est E2 qui devrait être mis à jour
pour I1.
C'est maintenant le cas car je conserve pour chaque arbre existant
l'arbre importé le plus proche.
- si l'arbre importé n'est pas le meilleur candidat (ie. il y a un autre
arbre importé qui est plus proche de l'arbre existant), j'essaye avec les
autres arbres existants qui étaient dans son rayon (et s'il n'y a plus
d'autres arbres existants alors il faudra créer un nouvel élément)
- si l'arbre importé est le meilleur candidat, je peux alors
utiliser l'arbre existant pour le mettre à jour. Mais je dois alors
relancer tout le processus pour l'ancien meilleur arbre importé qui à son
tour pourrait éventuellement faire des changements (fonction récursive).
Bon c'est pas évident d'expliquer tout ça par mail mais vous pouvez voir
les sources ici:
https://github.com/vince-from-nice/osmaxil/blob/master/src/main/java/org/openstreetmap/osmaxil/plugin/maker/NiceTreeMaker.java
Il faut que je fasse plus de vérifications mais ça a l'air de bien
fonctionner.
De plus, comme je suis sûr d'associer l'arbre existant avec l'arbre importé
le plus proche, je peux me permettre d'augmenter le rayon (là j'ai mis 5
mètres).
D'ailleurs je peux attacher le résultat sur la mailing list (environ 500KB)
?
PS: outch j'avais pas vu tous les mails qui s'était accumulés depuis que
j'ai commencé mon mail hier soir ! Je vais essayer d'y répondre un peu plus
tard...
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.openstreetmap.org/pipermail/talk-fr/attachments/20150726/da9f461f/attachment.htm>
Plus d'informations sur la liste de diffusion Talk-fr