Konwersja UMP do OSM XML

Z UMP

(Różnice między wersjami)
(Zastosowania)
(Konwersja)
Linia 46: Linia 46:
cd $CVS/WORK
cd $CVS/WORK
perl $CVS/narzedzia/mont-demont-multi2.pl --cities --topo --nodummy --noborders --mont $DIR
perl $CVS/narzedzia/mont-demont-multi2.pl --cities --topo --nodummy --noborders --mont $DIR
 +
 +
; 5. Konwersja .mp -> xml .osm
 +
Końcowa konwersja dokonuje się z użyciem skryptu ''txt2osm.py''.
 +
 +
Skrypt ten pochodzi ze strony [http://repo.or.cz/w/ump2osm.git http://repo.or.cz/w/ump2osm.git] i oryginalnie powstał na potrzeby importu danych z UMPpcPL do projektu [http://www.openstreetmap.org www.openstreetmap.org].
 +
 +
Aktualna wersja znajduje się w projektowym repozytorium CVS ( ''narzedzia/txt2osm.py'' )
 +
 +
python $CVS/narzedzia/txt2osm.py --positive_ids wynik.mp >wynik.osm
 +
 +
* --positive_ids wymusza użycie dodatnich identyfikatorów obiektów w xml. Pozwala pracować z narzędziami typu [http://wiki.openstreetmap.org/wiki/Osmosis osmosis], [http://wiki.openstreetmap.org/wiki/Osm2pgsql osm2pgsql]. Pominięcie tego parametru powoduje użycie indeksów ujemnych, które pozwalają na poprawną pracę z edytorem [http://josm.openstreetmap.de/ JOSM].
 +
* konwersja całego obszaru Polski wymaga ponad 5GB pamięci RAM i 64-bitowego systemu
== Zastosowania ==
== Zastosowania ==
[[Kategoria:Użytkowanie mapy]]
[[Kategoria:Użytkowanie mapy]]

Wersja z dnia 20:08, 7 maj 2012

Wstęp

{ Artykuł w trakcie tworzenia }

Coraz częściej mapa UMP jest używana do innych zastosowań niż wgranie do odbiornika Garmina.

Artykuł ten opisuje sposób konwersji na format OSM XML [1]

Wynik tej konwersji pozwala dalej na użycie danych UMP w serwisach udostępniających mapy za pomocą www, generujących trasy przejazdu (routing) czy załadowania do bazy danych geograficznych.

Konwersja

Opis konwersja dotyczy środowiska Linux. Oczywiście można jej dokonać z użyciem Windows ale szczegóły tej operacji zostawiamy domyślnemu czytelnikowi.

Potrzebne będą:

  • dowolny Linux 2-6GB RAM (2GB dla pojedynczych fragmentów mapy - 6GB RAM dla całej Polski)
  • narzędzia
    • cvs
    • perl
    • python
  • katalog roboczy 2GB+


1. Stworzenie katalogów roboczych
mkdir $HOME/UMPCVS
mkdir $HOME/UMPCVS/WORK
2. Definicje zmiennych środowiskowych

CVSROOT to namiary na repozytorium CVS mapy UMP, zaś DIR lista regionów mapy. Polska ma ich aktualnie 33.

export CVSROOT=":pserver:guest@ump.waw.pl/home/cvsroot"
export CVS=$HOME/UMPCVS
export DIR="UMP-PL-Warszawa UMP-PL-Radom UMP-PL-Suwalki"

dla całej Polski

export DIR="UMP-PL-Bialystok UMP-PL-Ciechanow UMP-PL-Gdansk UMP-PL-GorzowWlkp UMP-PL-JeleniaGora UMP-PL-Kalisz UMP-PL-Katowice UMP-PL-Kielce UMP-PL-Klodzko UMP-PL-Koszalin UMP-PL-Krakow UMP-PL-Leszno UMP-PL-Lodz UMP-PL-Lublin UMP-PL-NowySacz UMP-PL-Olsztyn UMP-PL-Opole UMP-PL-Pila UMP-PL-Plock UMP-PL-Poznan UMP-PL-Przemysl UMP-PL-Radom UMP-PL-Rzeszow UMP-PL-Siedlce UMP-PL-Suwalki UMP-PL-Szczecin UMP-PL-Tarnow UMP-PL-Tczew UMP-PL-Torun UMP-PL-Warszawa UMP-PL-Wloclawek UMP-PL-Wroclaw UMP-PL-Zamosc"
3. Replikacja źródeł mapy i narzędzi z projektowego CVSa
 cd $CVS
 cvs checkout narzedzia
 for i in $DIR ;do
    cvs checkout  $i
 done
4. Montaż czyli stworzenie jednego pliku w formacie MP

Skrypt mont-demon-multi2.pl domyślnie zapisuje wynik pracy w pliku wynik.mp

Parametry:

  • --cities umieszcza punkty miast w pliku wynikowym. Można pominąć jeśli nie są potrzebne.
  • --topo włącza do pliku wynikowego dane topograficzne.
  • --noborders usuwa z pliku wynik.mp granice międzyobszarow. Nie są one potrzebne w większości zastosowań.
 cd $CVS/WORK
 perl $CVS/narzedzia/mont-demont-multi2.pl --cities --topo --nodummy --noborders --mont $DIR
5. Konwersja .mp -> xml .osm

Końcowa konwersja dokonuje się z użyciem skryptu txt2osm.py.

Skrypt ten pochodzi ze strony http://repo.or.cz/w/ump2osm.git i oryginalnie powstał na potrzeby importu danych z UMPpcPL do projektu www.openstreetmap.org.

Aktualna wersja znajduje się w projektowym repozytorium CVS ( narzedzia/txt2osm.py )

python $CVS/narzedzia/txt2osm.py --positive_ids wynik.mp >wynik.osm
  • --positive_ids wymusza użycie dodatnich identyfikatorów obiektów w xml. Pozwala pracować z narzędziami typu osmosis, osm2pgsql. Pominięcie tego parametru powoduje użycie indeksów ujemnych, które pozwalają na poprawną pracę z edytorem JOSM.
  • konwersja całego obszaru Polski wymaga ponad 5GB pamięci RAM i 64-bitowego systemu

Zastosowania