http://jerome.le.chat.free.fr

Home > news > updated : 0.445

updated : 0.445

this release corrects some bugs about zoning, but mainly focuses on the city map creation part.

there were bis issues with the city maps that include dead-ends, blocks surrounded by another block. this update solves most* of the cases.

included blocks :



from a logical representation point of view, there's no difference between two blocks linked together by a road and a block included in another one, both linked by a road.
now the script is able to recognize the two cases, at map 'physical' creation time.



+ dead-ends :

 

if the generated objects are wrong, try first to scale your input map bigger. if it's still wrong, try to locate the issue by removing the roads, little by little..

* this part of the script is like (re)writing a network logical discovery algorythm, as a network protocol would do at init. then it builds the objects starting from that logical representation. the hardest part is about the blocks recognition.. and when tunnels and bridges features will be added, a new battle will begin... :) )

so if you meet any error, or if you want to share knowledge or algorythms me please contact me in odrder I can improve it ;)

the creation process begins at line 2767 in the main file, blended_cities_0445.py. this part calls  two functions located in the bin/parsers/readmeshmap.py file, that cares about the logical representation and the block recognition.

download !



au niveau de la représentation logique du plan, il n'y a pas de différence entre deux blocs reliés par une route d'une part, et un bloc inclu dans un autre et relié par une route d'autre part.
maintenant le script est capable de faire la différence au moment de créer les volumes.



+ les routes en cul-de-sac :

si vous rencontrez des erreurs essayez d'abord de grossir le plan source. si ca ne marche toujours pas, localiser le problème dans le plan en enlevant des routes petit à petit..

* cette partie du script revient à (re)écrire une découverte logique d'un réseau, comme le ferait un protocole de routage à l'initial, puis à créer les formes cohérentes à partir des infos logiques (la partie est la plus difficile, concerne la reconnaissance des pavés.. et ce n'est pas fini quand il s'agira de rajouter des ponts et des tunnels :) )

donc si vous rencontrez des cas ou ça ne marche pas comme ça devrait, ou si vous êtes le roi de la logique et de la géo euclidienne, contactez-moi afin que j'améliore ;)

la création commence ligne 2767 dans le fichier principal, blended_cities_0445.py. cette partie fait d'abord appel  au fichier bin/parsers/readmeshmap.py qui s'occupe de la représentation logique et de la reconnaissance des pavés.

download !

Last Updated on Tuesday, 25 May 2010 19:29