> Proc je potreba mit vsechny nody v pameti? Dve moznosti: > 1. Vykresli se cela cesta i kdyz se v ni hybne treba jen jednim nodem? To
Ne, pokud se hybe nodem tak ne, ale pokud se pridavaji nebo ubiraji nody nebo meni tagy tak jo. > bych mozna takto nezeslozitoval... Jak to vypada kdyz se kresli jen > modifikace nodu? Kdyz se totiz pridava way, tak by se rozsvitila, pokud se Kdyz se to pusti jen na nody, tak to "sviti" o neco mene, ale ne zas o moc. > jen upravi geometrie, rozsviti se skutecne jen ten nod. Chapu, ze by to > svitilo mnohem mene, ale asi by vice odrazelo realitu. Nevyhoda: Neviditelne > pracne zpresnovani tagu a uprava ways... Mozna bych mohl vygenerovat dva obrazky zvlast, jeden pro nodes, jeden pro ways > 2. Prochazet osm.xml 2x. V prvnim prubehu si poznamenat idcka nodu, ktere > nalezi zmenenym ways a jez se maji vykreslit. V druhem uz probihat identicky > jako u 1 s tim, ze se vykresli navic i ty s timestamp. Pokud budou kolizni > vykreslit tou svetlejsi barvou. V teto variante budou mezivysledky asi dost > male (vse se ihned kresli a pamatuji se jen IDcka nodu ze zmenenych ways), > ale pro poradnou paranoiu se da pouzit sqlite jako zasobarna IDcek. U nodu skladuju jako klic ID (zatim se do 32bitu vejde :) a jako hodnotu prepocitane souradnice v obrazku (coz se narozdil od 2x double vejde s prehledem do 32 bitu). Teoreticky min. 8 bajtu/nod, ale je to nejaky overhead u pouzitych datovych struktur. Takze udelat to pro planet by asi slo po mensi optimalizaci i na 4gb ram (neco sezere i vystupni obrazek, ktery by mel byt pro planet asi velky, aby bylo neco videt) Moc bitu se uz usetrit neda, pro cely planet a vetsi obrazky se to u obou k tem 32 bitm celkem dost blizi (takze 300M nodes=min 2.4gb ram) > Nejhezci by bylo pri prvnim pruchodu udelat mezisoubor s nodama (napr. > ID\tabLAT\tLON), ktery bude zarucene sesortovany podle ID a ten pak jenom > mergovat se sesortovanym mezivysledkem nodu zmenenych ways (sort | uniq). > Pak je pametova naroznost nulova pro libovolnou velikost dat. Pokud to > vypada slozite tak z duvodu me snizene schopnosti se vyjadrovat :) Pokud se to vejde do pameti, tak to bude asi lepsi nez to mit na disku. Uvidime :) > No a druha vec, kterou nechapu je pouziti PERLu :-) Ale to je ciste z > duvodu, ze jsem do nej nemel nikdy silu proniknout (bohuzel jsem se drive > naucil citelnejsi jazyky). Pro mensi znalce (jako ja), je pak nulova moznost > do takoveho kodu prispet... Za zaklad jsem vzal nejaky svuj starsi skript pracujici s OSM .... ktery byl v perlu :) Ma to asi 3kb, mozna o prepisu do c++, kde by sly nektere veci delat asi precejen efektivneji. Martin _______________________________________________ Talk-cz mailing list Talk-cz@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-cz