Re: [osm-hu] Re: CLC adatok importálása

Zsolt Bertalan herrbert74 at gmail.com
2011. Júl. 22., P, 09:45:43 UTC


Tetszik, nem tetszik, az OSM adatbázisnak ez a formája, ömlesztve vannak az
adatok. Ha pedig így van, akkor rendet kell tartani köztük, szerintem ez a
lehető legkevesebb ponttal lehetséges. De szerintem az sem baj (sőt), hogy
ömlesztve vannak, hiszen többnyire az utak, folyón mentén, illetve a
területfelhasználás (ld. landuse) határain jelölték ki a határokat.
Szerintem az lenne butaság, ha nem egyeztetnénk össze ezeket. Ha azért zavar
ez, mert külön szeretnéd látni őket, simán létre lehet hozni ilyen
renderelést is később, mert minden kapcsolatokban van ugye.

Szeretném felhívni a figyelmet egy osmosis paraméterre. Ha a
completeways=no, completeways=no mellett a clipcompleteEntities=true
paramétert is beállítod, akkor nem kell hárommegyényi szántóval megőrülni.
Kivághatod kisebb területre, akár megyére vagy kistérségre is.
Én ennél is tovább mentem, kidolgoztam egy módszert, amivel településenként
(boundary box helyett polygont használva) egy egész megyét be lehet vinni
egy-két nap alatt, hibamentesen. Persze még ki kell próbálni teljes
egészében. Most elvégeztem (fél óra alatt) Bakonykoppány községre, ma még
Bakonyszücsre szeretném megcsinálni.

A következő a folyamat:
- hungary.osm.pbf és clc06_hu_resave letöltés
- Osmosis: Megyehatárok kivágása a pbf fájlból
- Perl: poly fájl létrehozása a megyehatárokból az adatok darabolásához.
- Osmosis: megyékre darabolás
- Fenti háromból első kettő elvégzése településhatárokra -> *településhatár
poligonok*.
- Osmosis: CLC adatok kivágása településhatárokkal. Itt fontos, hogy a
következőket használtam: completeWays=no
completeRelations=no*clipIncompleteEntities=true
*
- JOSM: darabolt CLC + településhatár beolvasása, összeillesztése
- JOSM: adott terület letöltése és összeillesztése a fentiekkel. Itt van egy
kis extra trükk és egy probléma:
 - a trükk: mit csináljunk az átnyúló területekkel (le van vágva az átnyúló
részük)? Ha megvan a szomszéd település, akkor csak be kell húzni a meglévő
pontba a határon, és kiegyenesíteni a két egyenest, ami a határba vezet
(mivel a két pont maradt csak a CLC kivágásnál, köztük egy egyenes volt
eredetileg). Ha nincs, be kell húzni egy véletlen pontba a határon, és a
szomszéd importjánál javítani.
 - a probléma: ha van két szomszédos pont a CLC adatban, de az összekötő
egyenes átnyúlik a szomszédba. Ez szerintem hiba a CLC/boundary adatokban,
ezért nem kell törődnünk vele, csak hozzáigazítjuk a határhoz.

Az Osmosisnál batch fájlokat használtam, mert egyszerre több megyére,
illetve településre is el kell végezni. Mivel nem tudtam ékezetes betűkkel
elvégezni a műveleteket (megőrülök a karaktertábláktól), manuálisan át
kellett írni a megyék és települések neveit. Ez nem elegáns és megnövelte az
időigényt kissé (nem vészes annyira). Ha valaki tud megoldást/ért
ilyesmihez, segíthetne.

Üdv
Bertalan Zsolt

2011/7/21 Kovacs Szilveszter <hunsly at gmail.com>

> Szuper. CLC-re várom  többek véleményét is. :)
>
>  --
> Magyar OSM Levelezőlista - openstreetmap-hungary at googlegroups.com
> leiratkozás: openstreetmap-hungary+unsubscribe at googlegroups.com
>
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.openstreetmap.org/pipermail/talk-hu/attachments/20110722/f128611e/attachment.htm>


További információk a(z) Talk-hu levelezőlistáról