<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Bonjour,</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Afin de
voir où l'on en est sur la qualité des fichiers bâti issus du cadastre, j'en ai récupéré quelques
uns sur cleo, et j'ai tenté d'identifier les pb récurrents que le contributeur doit gérer quand il se lance dans l'aventure "import du bati":</span></p>
<ol style="margin-top:0cm" start="1" type="1"><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des noeuds en doubles ou très
proches</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des chemins avec un même noeud
répété</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments se croisant eux-mêmes</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments se chevauchant
très faiblement</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments adjacents, mais
qui ne partagent pas leurs noeuds. Topologiquement ils ne sont pas
mitoyens, de quelques centimètres.</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments en double</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments inclus dans d’autres,
ou se superposant franchement</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments découpés par les
limites de parcelle</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments avec un nombre exubérant
de nœuds</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Validator c’est long et ça rate
des anos en plus !</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments qui existent déjà
dans OSM</span></li><li class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Des bâtiments sur les highway
existantes</span></li></ol>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Vous en avez
d’autres ?</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"> </span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">J'ai écrit
2 scripts python. Ce n’est pas très pythonique, pas très performant, mais cela règle
plus d’anos que ça n’en crée (je crois pas que cela en crée :-) ). Ils utilisent OsmSax [1], Rtree, et Shapely :</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Node_simplifier.py :
A partir d’un fichier .osm, crée un autre .osm en éliminant les nœuds en
double, ou proches, et nettoie les chemins des nœuds se répétant.</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"> </span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Node_join.py :
A partir d’un fichier .osm, crée un autre .osm en « J »isant tous les
nœuds. Il s’agit de la
fonction J de JOSM qui intègre un nœud à un chemin si
celui-ci en est suffisamment proche. A noter que cela ne déplace aucun point,
et que l’on conserve tous les points.</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"> </span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Pour l’instant
les paramètres de distance sont en dur (et en angulaire), et tous les objets modifiés se voient
ajouter un tag fixme pour visualiser les modifs. Ces deux scripts, passés dans
cet ordre, traitent les points 1,2,4,5. <span> </span>Un
troisième script est en cours pour le point 9.<br></span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"> </span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial">Je vous
laisse juge de leur qualité et de leur intérêt. A vos remarques !</span></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"></span></p><p class="MsoNormal"><span style="font-size:10pt;font-family:Arial"><br></span></p><p class="MsoNormal"></p>A final<span style="font-size:10pt;font-family:Arial"> je crois qu'il faudra supprimer les dépôts
type cléo, et mettre à dispo une interface d’import différentiel tuilé,
c'est-à-dire
qui n'affiche et ne renvoie qu’une portion des bâtiments à importer
et, pour combler les manques de Validator, en ajoutant les tag fixme du
type : « bâtiment superposé avec l’existant », « bâtiment superposé au
cadastre », « bâtiment
sur highway », etc…afin d'aider et d'alerter le contributeur... et peut-être aussi le réfréner ;-)<br></span><p class="MsoNormal"><br></p><p class="MsoNormal"><br></p><p class="MsoNormal">BrunoC<br></p><p class="MsoNormal">
<br></p><p class="MsoNormal">[1] <a href="https://gitorious.org/osmose/backend/blobs/master/modules/OsmSax.py" target="_blank">https://gitorious.org/osmose/backend/blobs/master/modules/OsmSax.py</a></p><p class="MsoNormal">
<br></p><p class="MsoNormal">
<span style="font-size:10pt;font-family:Arial"></span></p><p class="MsoNormal">
<span style="font-size:10pt;font-family:Arial"></span></p>