Mam kilka pytan dotyczacych przygotowania map OSM do druku.
Przygotowujemy ksiazke opisujaca nasza wycieczkę z południa na północ Polski
(WWW.PPP30.PL) i wiekszosc recenzentow naszego manuskryptu stwierdzilo
ze dobrze by bylo zamiescic mapke dla kazdego dnia i pokonanego w tym dniu
odcinka.
I tu mam pytanie, jakiej aplikacji najlepiej uzyc do przygotowania map do druku?
mapnik, TopoMap etc.?
Na ten moment walczymy z TopoMap v1.7.0.15 ale rezultat nie jest do konca zadowalajacy
t.j. mapy będą w formacie B5 ewentualnie B4 jeśli wydrukujemy na dwóch sąsiadujących stronach.
Problem jest natomiast w znalezieniu kompromisu skali - w niektóre dni przeszliśmy 20-30km
a w niektóre też podróżowaliśmy stopem i wtedy potrafiło to być 80-150km.
Idealnie byłoby aby dało się wydrukować mapę np. 1:100000 ale z zachowaniem szczegółów
wybranej drogi, schronisk czy innych obiektów ‘turystycznych’ która normalnie przy tej skali znikają.
Problem też że plikiem wynikowym jest ogromny ‘nieskalowalny’ TIFF - czy da się zmusić TopoMap
do wygenerowania pliku w formacie wektorowym, który potem dałoby się wczytać do programu
graficznego i tam dopisać interesujące nas szczegóły?
w podlinkowanym tekście o generowaniu SVG w Maperitive tylko wspominam, poświęcony on jest innym metodom generowania mapy,
generowanie mapy SVG jest w mojej opinii dość kulejące (są różne problemy z optymalizacją dla różnych programów, z nieco innymi opcjami dostępnymi, zresztą w ogóle nie wszystkie opcje z rastrów są dostępne),
Maperitive sam w sobie ma pewne ograniczenia w renderowaniu, pewnych uproszczeń programy po prostu nie da się przeskoczyć (niekoniecznie będzie to przeszkadzać w tym konkretnym przypadku).
Jak ja bym podszedł do tematu:
ostateczne przygotowanie mapy do wydruku (czy jako gotowego PDF, czy poszczególnych PNG do wstawienia w czymkolwiek) w Mobacu (koniecznie ustawiając DPI!),
jako podkład mapy wykorzystał istniejący render (bo po co się męczyć?), do którego bym wygenerował nakładkę z interesującymi szczegółami (np. schroniska, pomniki itd. jako same punkty na przezroczystym tle) – po czym zrobił dwuwarstwowy podkład do Mobaca.
Edycja: inną opcją jest QGIS, też ma jakąś obsługę OSM (żeby dorysować wybrane elementy), ale szczegółów nie znam.
Polecam QGIS + Postgres, używam na co dzień i można uzyskać naprawdę ładne mapy, dużo czasu zajmuje opracowanie stylów ale jak się przez to przebrnie to można cuda, tak na szybko:
-r pdb: informacja o pliku z rozszerzeniem pdb,
-d osm_pl: nazwa istniejącej bazy danych,
-U forumowicz: użytkownik z uprawnieniami do bazy,
-W: wywołuje zapytanie o wymagane hasło,
-c: zastępowanie istniejących w bazie danych,
-p pl_osm: prefiks nazwy tabel,
-H 192.168.0.100: host
-P 5432 port,
-G zastosowanie multigeometrii,
-C 2000: ustawienia casch,
-E 3857: zastosowanie wybranego układu Pseudo Mercator,
-v: włączenie pyskowania terminala, żeby nam się nie nudziło
Im szybszy dysk i więcej RAM tym mniej kaw wypijemy w międzyczasie.
Edycja: dużo ładnych map zrobionych w QGIS można też obejrzeć na flickr.com w grupie QGIS http://www.flickr.com/groups/qgis/pool/, spora część z prezentowanej tam twórczości zawiera dane z OSM, a ja czasem szukam tam inspiracji
Tym jak wyświetla się dana warstwa steruje się we właściwościach warstwy, w zakładce styl. Ze względu na to, że dane z OSM są mocno rozbudowane to sprawdza się metoda “Oparta na regułach”.
Tutaj przykład dla poligonów z mapki czarno-białej (zadziała przy założeniu, że używamy domyślnego schematu tabeli używanego przez osm2pgsql):
Zarządzanie stylem służy do porządkowania symboli, które dopracowywało się długimi zimowymi wieczorami
osm2pgsql domyślnie robi indeks tylko na geometrii i hstore - warto założyć dodatkowe na często używanych kolumnach, różnica w szybkości jest duża :).
Innym fajnym narzędziem do importu OSM → PostGIS jest imposm, jest to tyle dobry, że łatwo definiuje się własne regułki, np. zamiast jednej kobyły typu osm_planet_polygon masz tabelę z jeziorami, osobną z budynkami, itp - możesz też dość precyzyjnie filtrować co trafia do takich tabel. Do tego ma opcję generowania uproszczonych widoków dla małych poziomów zoom-a.
No i jest bardzo szybki - całe planet-osm na domowym laptopie przemieliło mi w 9h, gdzie wg. opisów osm2pgsql trwa to nawet kilka dni.