Kniznica libosmscout

Kompilacia libosmscout

Na vytvorenie databazy z .osm suboru je potrebne mat vykompilovanu kniznicu libosmscout http://wiki.openstreetmap.org/wiki/Libosmscout#Building_the_library:

V tomto priklade dame zdrojaky do /opt/libosmscout/src a vykompilovane libky do /opt/libosmscout/build.

mkdir /opt/libosmscout /opt/libosmscout/src /opt/libosmscout/build
git clone https://github.com/Framstag/libosmscout.git /opt/libosmscout/src

Libosmscout nema otagovane/overzionovane zdrojaky, jedine podla coho sa da zistit verzia je staticka premenna FILE_FORMAT_VERSION v libosmscout/include/osmscout/TypeConfig.h. Ak by sme potrebovali vykompilovat starsiu verziu libosmscout, treba najst ziadany commit (SHA)

cd /opt/libosmscout/src
git reset --hard <SHA daneho commitu, napr pre verziu 16**: a6f0d454e06aa694f749dd5ee2b8c879a04a2efb>
mkdir -p /opt/libosmscout/src/build
cd /opt/libosmscout/src/build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/libosmscout/build ..
make -j `nproc`
make install

**Changelog: Do vesna-1802 a pouzival hash: 28c13b518d4a7946b8f8cbb5292a1c5c88995e2e, file version 7

Generovanie databazy pre Vesna zariadenie

Najskor je potrebne stiahnut aktualnu mapu SR, pripadne ineho statu: Odporucana je stabilna verzia ktora vychadza vzdy 1.januara v roku, v pripade poslednej dostupnej verzie sa mozu vyskytnut chyby v Importe : http://download.geofabrik.de/europe/slovakia.html

Stable : http://download.geofabrik.de/europe/slovakia-180101.osm.pbf

Kedze cela mapa SR ma rozbalena okolo 5GB pouziva sa na strojceku okresana verzia:

# pre pracu s .osm potrebujeme osmctools
sudo apt-get install osmctools

# rozbalenie z kompresnuteho formatu .osm.pbf do .osm
osmconvert slovakia-180101.osm.pbf -o=slovakia-180101.osm

# filtrovanie nepotrebnych dat:
osmfilter slovakia-180101.osm  --keep="highway=motorway =trunk =primary =secondary =tertiary =residential =motorway_link =trunk_link =primary_link =secondary_link =tertiary_link =service waterway=river railway=" > tiny_slovakia_180101.osm

Import .osm do databazy :

cd /opt/libosmscout/src/maps
mkdir tiny_slovakia_180101
../build/Import/Import --typefile ../stylesheets/map.ost --destinationDirectory tiny_slovakia_180101/ ~/Downloads/tiny_slovakia_180101.osm 
rm tiny_slovakia_180101/*.html

Stylesheets

Libosmscout pouziva dva stylesheet subory:

Mapy pre jednotlive krajiny

Slovensko

Pre import do databazy pouzivame stylesheet no_road_labels.ost (map.ost bez nazvov ciest).

../build/Import/Import --typefile ../stylesheets/no_road_labels.ost --destinationDirectory tiny_slovakia_180101/ ~/Downloads/tiny_slovakia_180101.osm 
Changelog

Provincia Izmir (Turecko)

Kedze mapa cestnej siete pre cele Turecko je prilis velka (~950 MB), pouzivame orezanu mapu ktora obsahuje len provinciu Izmir a jej okolie. Orezavame podla rovnobeziek 37.5-39.5N a poludnikov 26-28.5E:

osmconvert turkey-180405.osm.pbf -b=26,37.5,28.5,39.5 --complete-ways -o=izmir_province-180405.osm

Kedze sa jedna o pobreznu krajinu, mapy obsahuju moria a pobrezie.

osmfilter izmir_province-180405.osm --keep="highway=motorway =trunk =primary =secondary =tertiary =residential =motorway_link =trunk_link =primary_link =secondary_link =tertiary_link =service waterway=river railway= place=sea natural=coastline" > tiny-izmir_province-180405.osm

Pre import do databazy pouzivame stylesheet no_road_labels.ost (map.ost bez nazvov ciest).

../build/Import/Import --typefile ../stylesheets/no_road_labels.ost --destinationDirectory izmir_province-180405/ tiny-izmir_province-180405.osm 
Changelog