export turistických tras z db

Ahoj,
předesílám že jsem v používání OSM dat nováček a nejsem zcela zdatný v práci s databází :). Mám dotaz netýkající se tvorbě a úpravě OSM dat, ale spíš jejich využití.

Jde mi o toto. Vím, že součástí OSM dat jsou turistické a cykloturistické trasy. Původně jsem pracoval s shp staženými z geofabrik, ale jak jsem záhy pochopil, tam není všechno. Stáhl jsem si tedy soubor pbf a ten podle návodu (http://skipperkongen.dk/2011/01/20/how-to-import-open-street-map-data-into-postgresql/) importoval do postgisu. Nicméně tam jsem zjistil, že turistické trasy také nejsou :). Může mě někdo nasměrovat nebo vysvětlit, jak je z dat OSM vytáhnout a uložit třeba jako shp, abych s nimi mohl pracovat dál? (A jen tak ze zájmu proč mi vznikly po importu dvě tabulky planet_osm_line a planet_osm_roads, přijde mi, že lines obsahuje roads a ještě další linie)

Jen znovu upozorním, v používání OSM jsem nováček a s databází docela válčím, takže mějte slitování :slight_smile:

Díky,
Dan

Nazdar,

dost záleží co s tím potom chceš dělat. Doporučuju se mrknout jak fungují Relations a ways. Turistické trasy jsou totiž tagovány dvěma způsoby - 1) přímo way dostane kct_red=major … tedy potřebuješ z databáze získat takto značené cesty. 2) Relace je otagována type=route, route=hiking, kct_red=major a až ta obsahuje různé typy cest.

Asi nejjednoduším způsobem je využít overpass api, které ti umožní všechny tyhle data stáhnout v XML a následně třeba otevřít v JOSM nebo zkonvertovat do SHP. http://wiki.openstreetmap.org/wiki/Overpass_API

Jinak co se týče importu do postgre, myslím že se tam musí zapnout nějaký přepínač aby to vytvřoilo i tabulku relations. Jinak defaultně to vyplivne pouze data pro vykreslování. Ještě dopočuju mrknout na tento návod.

Díky za odpověď.

No, pro začátek bych je rád uložil jako shp a použil třeba pro papírovou turistickou mapu :slight_smile:

Když jsem to doimportoval podle odkazu, který jsem psal, tak mi v databázi vznikly tyto tabulky: line, nodes, point, polygon, rels, roads a ways. line, point, polygon a roads vidím, když je chci přidat do QGISu a pomocí něj si sem schopný rozdělit si třeba tabulku linií na shp vodstva, uliční síť, administrativní hranice atd., to řeším jen pomocí atributů, ale právě to co je řešené relacemi, mi zůstává skryto. Zkusím se teda podívat, jak fungují ty relations a ways a co s tím můžu dělat :slight_smile:

Dan

zajímal by mě ten záměr - snazis se vytvořit vlastní mtbmap.cz, nebo ti jde pouze o prekryvnou vrstvu ke tvé (již existující neOSM) mapě?

a budeš generovat celou ČR, nebo nějaký úsek kvůli tisku?

Mrkni na ten druhý odkaz o OpenTrackMap a máš tam v poznámce pod čarou č.55 skript,který všechny údaje z relaci překopíruje na ty samotné cesty. To ti asi pomůže :slight_smile:

Jde mi jen o překryvnou vrstvu. Snažím se vytvořit turistickou mapu Lednicko-Valticka pro jeden penzion a používám pro to OSM data, takže generovat budu jen určitou oblast. Doteď jsem pracoval s shp (http://vrbikdan.xf.cz/ldk/ldk.html) z geofabrik.de nebo v případě webové mapy s tiles (http://vrbikdan.xf.cz/kontiky/index.html). Nicméně ty shp už mi přestávají vyhovovat, nejsou generované tak jak potřebuju, je tam hodně věcí jinak, než v originálních datech v databázi OSM.

Ten skript mi nejde otevřít, tak jsem zkoušel hledat a narazil jsem na jiný (respektive několik jiných) z map1: https://github.com/bigr/map1/tree/master/relations2lines, je to stejné, nebo bych měl ještě pohledat? A předpokládám, že ten skript pak spustím nějak v příkazovém řádku ve win? (ano, bohužel to mám importované do db na W7 :smiley: )

Díky
Dan

Skvělý, moc rád se pak podívám na výsledek.

Kdybych to dělal já, tak bych si prostě stáhnul všechny relace route=hiking a případně cesty kct_* v BoundingBoxu pomocí toho Overpass API, a potom našel nějaký konvertor formátu OSM-XML → SHP, což jsem už viděl. Ale možná by to taky nebylo tak jednoduchý.
Pokud to z OverPassu nestáhneš, tak alespoň doporučuju přes OSMOSIS vybrat z pbf formátu jen boundingbox(oblast), který tě zajímá a až ten potom importovat do DB, bude to o dost rychlejší.

Jinak ty skripty na githubu map1 budou asi podobné - zdá se že jsou od Martina Tesaře z mtbmap.cz … Přímo ty OpenTrackMap skripty jsou asi tady
Spuštění pod windows by nemusel být problém, stačí mít nainstalovaný Python interpret a možná aktivovaný nějaký plugin na připojení DB. Ale může to bugovat, protože testované je to zpravidla pod linuxem.

Já jsem to provozoval na linuxu a prostě to z těch relací vezme data a zkopíruje je to na cesty, takže to by ti přesně mělo pomoct.

Ještě nápad - vím že nějaké opensource GIS (grassgis?, qgis?) měly přímo nějaké pluginy pro práci s OSM daty. Ale víc netuším.

jo, snad to někdy dodělám, pracuju na tom po večerech :frowning:

ten overpass API jsem zkoušel jen zběžně, ale přišlo mi, že kdybych to chtěl skutečně za to území, tak to bude trvat poměrně dlouho než to vytáhne. QGIS na to má plugin, ale ten umožňuje stáhnout jen relativně malý objem dat a i když relace zobrazí, tak mi nedovolí s tím nějak víc pracovat (třeba uložit).

zkusím ty data nahrát přes osmosis jen tu zájmovou oblast a pak tím prohnat ty skripty, snad na to nějak přijdu díky :wink:

Dan

Ahoj,

nevím, zda je problém ještě aktuální, ale nejspíš to bude tím importem pomocí osm2pgsql. Osm2pgsql importuje jen ta data, která jsou definována v .style, např. /usr/local/share/osm2pgsql/default.style . Styl se dá předefinovat - kdysi jsem to udělal - http://pedro.propsychology.cz/osm/default.style . Možná bude lepší cesta přes osmosis, tím by se mělo naimportovat všechno, ale tuto cestu jsem ještě nezkoušel.