Le 23 janvier 2012 23:35, Vincent de Chateau-Thierry <v...@laposte.net> a écrit : > Le problème est illustré ici : > http://beta.letuffe.org/?layers=B0000FFFFFFFFFFTFFFFFF&zoom=7&lat=48.30871&lon=-1.51981 > > Le polygone principal du dept 35 n'est plus reconnu comme un polygone par > osm2pgsql [1], du coup il n'est pas rendu sur cette carte, et par ailleurs > il ne permet plus de savoir quelles communes incluses dans ce polygone > sont > déjà dans la base, d'où la liste intégrale des communes du 35 dans le > fichier CSV. >
Bref c'est un bogue, une limite de osm2pgsql, qui omet de charger les relations membres ayant un type "boundary_segment", alors qu'il charge les rôles "inner", "outer", et ne teste QUE les CHEMINS membres de la relation, et n'accepte comme relations "inner" ou "outer" QUE les relations ayant un type "boundary" ; mais pas un bogue ou une limite de JOSM, Mapnik, et tout le reste. La distinction de type entre "boundary" et "boundary_segment" est assez subtile : "boundary" indique que la relation est totalement fermée (et cela doit se vérifier), alors que "boundary_segment" ne l'est pas entièrement (il faut le connecter à un autre chemin non défini dans ce "boundary_segment" pour le fermer au sein d'une relation mère qui le liste comme membre). Cependant un boundary segment pourrait aussi lister après le segment principal ou un plusieurs chemins fermés, par exemple des îles proches d'un segment côtier, cependant je ne suis pas favorable à ça, le segment devrait se limiter à un seul chemin continu non fermé, que ce segment contiennent des chemins membres ou d'autres relations "boundary_segment" successifs). En dehors de cela, ce sont des types équivalents, qui chacun peuvent être listés comme membres "outer" ou "inner" de la relation mère. A mon avis, la séparation des types "boundary" et "boundary_segment" dans une relation est même superflue: ce devrait être le même type "boundary", avec seulement éventuellement un éventuel attribut (par exemple "unclosed=yes") ; le type est plutôt destiné à autre chose, à indiquer que volontairement les chemins membres ne peuvent pas être utilisés seuls pour remplir une zone, et que la relation ne définit pas seule cette zone mais seulement une partie de plusieurs zones limitrophes ; il indique qu'il faut chercher cette fermeture de zones dans une ou plusieurs relations parentes, car un même boundary_segment pourrait appartenir à plusieurs relations parentes (de niveaux inférieurs différents si ce sont des limites par niveau administratif, ou de types de relation différents par exemple deux départements limitrophes séparés par ce segment ; ou deux régions limitrophes ; ou une ou plusieurs communautés de communes ; ou un ou plusieurs pays limitrophes ; ou la terre et la mer pour un segment côtier). Mais les moteurs de rendus tracent ces deux types de la même façon (les mêmes styles de lignes: pointillés, couleurs, épaisseur, flèches). -- View this message in context: http://gis.638310.n2.nabble.com/Reflexions-sur-la-modelisation-dans-osm-des-niveaux-administratifs-en-france-tp7216522p7218740.html Sent from the France mailing list archive at Nabble.com. _______________________________________________ Talk-fr mailing list Talk-fr@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-fr