Więcej o moich kamuflażach / More about my camo patterns:
http://jeremak.blogspot.com/2014/10/more-camo.html

środa, 27 grudnia 2017

Geoportalu ciąg jeszcze dalszy: ściąganie map za pomocą MapoTero

O geoportalu popełniłem już w teksty:
http://jeremak.blogspot.com/2017/03/wstep-do-wstepu-geoportal-dla-harcerzy.html
http://jeremak.blogspot.com/2017/10/geoportalu-ciag-dalszy-duzo-kolorkow.html
Czas jednak dodać kolejny, ponieważ na ostatnim biwaku mojego środowiska, podczas omówienia zorganizowanej gry terenowej, wynikła rozmowa o przygotowywaniu map i wykorzystywaniu do obchodzenia trasy przez organizatora przed samą grą programów do nawigacji offline na smartfony. Zadeklarowałem się że opiszę jak ściągać z geoportalu mapy do drukowania, oraz ewentualnie: jak wgrywać je do telefonu. Można się więc tu spodziewać częściowo rozwiniętego, a częściowo uproszczonego opisu, który pojawił się już tutaj: http://jeremak.blogspot.com/2017/02/szlajanie-sie-ze-smartfonem-przez.html
Wygląda więc na to, że w końcu dorobiłem się tu jakiegoś sensownego cyklu. Po tylu latach...

Musimy jednak zacząć od wspomnienia kwestii legalności ściągania map z geoportalu. Podstawową usługą oferowaną przez ten portal jest możliwość przeglądania udostępnionych map. Jednak dostępny regulamin wspomina również o pobieraniu: http://www.geoportal.gov.pl/regulamin
Jednak o ile przeglądanie i wyszukiwanie jest powszechne i nieodpłatne, to już z pobieraniem jest trochę bardziej skomplikowana sprawa. Obecne w zasobach portalu dane są udostępniane odpłatnie, ale nie pobiera się opłaty za udostępnianie ich np. szkołom i podmiotom wymienionym w ustawie o pożytku publicznym i wolontariacie do celów edukacyjnych. Wszystko to jest wymienione z odpowiednimi paragrafami. Wychodzę więc z założenia że jeśli ściągam mapy na potrzeby swojej szkoły, albo drużyny harcerskiej do nieodpłatnego użytku, to jestem w pewien sposób usprawiedliwiony. Gorzej gdybym zaczął je wykorzystywać jako podkłady np. do jakiś odpłatnych prac związanych np. z planowaniem przestrzennym.

Jeszcze jedna sprawa, techniczna: podczas przeglądania te pliki i tak trafiają na nasz komputer jako pliki tymczasowe, dokładnie tak samo jak np. filmy na YouTube. Trzeba tylko potem umieć je wydobyć.

Część 1: ściąganie
Osobiście od dłuższego czasu wykorzystywałem program Kafelkarz, ale w tym tekście posłużę się prostszym MapoTero. Ma on wystarczająco dużo opcji, na dodatek często przystępniejszych niż Kafelkarz, aby być jednocześnie przydatnym i prostym w obsłudze. Można go ściągnąć z tej strony: http://mapotero.codeplex.com/ lub stąd: https://github.com/Eksploracja/MapoTero/releases
Ściągamy stamtąd spakowane archiwum, które rozpakowujemy w pasującym nam miejscu. Będziemy mieć mniej więcej coś takiego:


Zaś po uruchomieniu aplikacji będzie ona wyglądać w ten sposób:


Na razie, przed ściąganiem zajrzyjmy do ustawień. Z rzeczy które dobrze by było określić przed ściąganiem map jest przedrostek nazw segmentów mapy, którą będziemy ściągać, rozszerzenia pliku (domyślnie jest jpg, ale jeśli chcemy lepszej jakości można np. zmienić na png). Wybieramy też format pliku kalibracyjnego, czyli zawierającego współrzędne geograficzne. To dzięki niemu potem przy korzystaniu z nawigacji w odpowiednim programie mapa nie jest zwykłym rysunkiem, ale ma odniesienie do przestrzeni. Nie jest to ważne jeśli będziemy ją potem obrabiać jedynie w programie graficznym, ale zaczyna być jeśli obrabiamy ja w programie GISowym, albo wgrywamy do nawigacji. Na potrzeby tego tekstu późniejszego przerabiania pod wykorzystanie w aplikacji Locus wybrałem format .map
Co dalej? Pod mapą mamy możliwość wyboru rozdzielczości, zależnie od tego jak dokładny np. będzie wydruk, jak dużymi plikami jest w stanie operować nasz komputer. Oprócz tego, wykorzystując wskaźnik ilu rzeczywistym metrom odpowiadać będzie 1 piksel, jeśli jesteśmy kompletnie na bakier z GISem, da się „na piechotę” przeskalować mapę a nawet dorysować podziałkę liniową. Teoretycznie jest to wiedza na poziomie geografii w gimnazjum, ale właśnie w tym momencie zrobiłem sobie „mentalną notatkę”, że przydałoby się w końcu nauczyć posługiwać programem QGIS, zamiast obrabiać dosłownie wszystkie mapy w Corelu.
Z prawej strony wybieramy mapy, które chcemy ściągnąć. Tu w wyborze przydzadzą się moje dwa wymienione na początku teksty, które pozwolą co nieco zorientować się w różnych opcjach. Zwłaszcza że oprócz różnych skanów map topograficznych da się wybrać praktycznie wszystko, o czym wspominałem w tekście „Dużo kolorków”. A nawet jeszcze więcej. Próbował ktoś kiedyś nawigować wedle przedwojennej mapy niemieckiej? Ją też da się ściągnąć przez ten program.
Tyle że tym, na co głównie narzeka się np. podczas rajdów i gier terenowych jest właśnie to że mapy są stare i niedokładne. Zdarzyło się komuś że nagle ni z tego ni z owego wyrosło przed nim osiedle, albo autostrada, której nie ma na mapie z lat 80-tych? Pewnie tak. Dlatego też dla przykładu posłużę się nie skanem mapy topograficznej, a mapą wektorową, z obszarem określonym dla teoretycznej gry terenowej po przedmieściach. Bo jednak do terenów leśnych nadal lepsze będą mapy topograficzne. A właśnie, jak wybieramy obszar? Tu obecne jest jedno z uproszczeń w porównaniu do Kafelkarza: wystarczy zaznaczyć go na mapie przytrzymując prawy przycisk myszy. A potem klikamy pobierz i idziemy zrobić sobie herbatę, bo zależnie od wybranej mapy i rozmiaru ściąganie segmentów może trochę potrwać. Zwłaszcza że w swoim przykładzie zmieniłem dokładność ściąganej mapy na 1 m/px. Po ściągnięciu segmenty powinny wyglądać mniej więcej tak:

Następnie klika na ten czarny prostokąt na lewo od „pobierz”, podpisany po najechaniu na niego myszką „złącz wybrane segmenty w jeden arkusz”, zaznaczamy czy ma zostać też wykonany (i jaki) plik referencyjny, ustawiamy jakość konwersji i mamy jedną, całą mapę, podpisaną „scalone segmenty” W całej, potrzebnej nam okazałości. Niestety akurat w przypadku tego serwera WMS dostępne są numery budynków, ale już nie nazwy ulic.Tu jednak wszystko zależy od tego jaką mapę i jakie konkretne warstwy chcemy ściągnąć. Z doborem map i warstw polecam eksperymentować, żeby dopasowywać ściąganą mapę do konkretnych prywatnych potrzeb.


Taki plik możemy opracowywać pod względem graficznym do naszych potrzeb jeśli chcemy go wydrukować: kadrować, oznaczać co tylko chcemy.

Część 2: konwersja
Jeśli chcemy go wgrać do Locusa, czeka nas jeszcze kilka kroków. Jeśli jako plik referencyjny zaznaczyliśmy .map, potrzeby nam będzie program do konwersji. Ja używam OruxMapDesktop, do ściągnięcia stąd: http://www.oruxmaps.com/descargas_en.html
Jego też rozpakowujemy w pasującym nam folderze. Po uruchomieniu pliku .jar wygląda tak:


Ważne żeby tam na dole po prawej „Sqlite format” był zaznaczony, bo właśnie do takiego formatu, wykorzystywanego przez Locusa chcemy konwertować ściągnięte przez MapoTero pliki. Klikamy na „Calibration file” i wskazujemy lokalizację naszego ściągniętego pliku referencyjnego .map (czyli najpewniej folder download w folderze MapoTero). „Image file” to nasza mapa w pliku graficznym. Ciekawostka: jeśli tworzymy grę fabularną możemy najpierw narysować na mapie różne „obszary fabularne”, „strefy skażenia”, „bazy” itp. i i o ile nie wykadrujemy jej, to potem, po konwersji, nadal będą one widoczne przy korzystaniu z aplikacji nawigacyjnej. Czemu nie można kadrować pliku graficznego na tym etapie? Bo rozjedzie nam się ze współrzędnymi z pliku referencyjnego. Przygotowany do konwersji program powinien wyglądać mniej więcej w ten sposób:


Klikamy „Create Map” i we wskazanym miejscu docelowym pojawia nam się folder ze skonwertowaną mapą, zawierający plik xml o rozszerzeniu otrk2. Cały folder przerzucamy na smartfona, do miejsca gdzie trzymamy zewnętrzne mapy do Locusa.

Część 3: wgranie do Locusa
Po wgraniu folderu w odpowiednie miejsce, czas załadować go do aplikacji. Po jej uruchomieniu wybieramy opcję „Mapy” w menu, a następnie plus w kółku w prawym dolnym rogu ekranu. Wybieramy mapy zewnętrzne, potem jeszcze raz plus.


Teraz będzie trochę trudniej, ponieważ musimy się dokopać przez skomplikowaną dla niektórych strukturę plików Androida do folderu w którym umieściliśmy naszą mapę.


Gdy do niego się dokopiemy, wybieramy folder mapy, potem plik otrk2.xml, zamykamy okno „mapy zewnętrzne” i jeśli wszystko poszło dobrze, na liście map powinna pojawić się nowa.


Wybieramy ją, ładuje się i mamy przygotowaną przez nas mapę dostępną w kieszeni.


Wszystkich opcji Locusa nie będę tu opisywał, ponieważ wymagałoby odrębnego tekstu, jednak tak na zakończenie i zachętę dodam że wyśrodkowanie ekranu na naszą obecną pozycję wybiera się tym znaczkiem w dolnym lewym rogu ekranu.

2 komentarze:

  1. Jak pobrać mapę topo w sakli 1:5000 za pomocą mapotero ??

    OdpowiedzUsuń
    Odpowiedzi
    1. Mapa zasadnicza 1:5000 wykorzystywana np. w gminach nie jest udostępniana na Geoportalu, więc nie da się jej ściągnąć. Choć może się to z czasem zmienić, bo wprowadzana jest na Geoportalu Krajowa Integracja Uzbrojenia Terenu, jednak adres jej serwera WMS trzeba by do Mapotero, czy Kafelkarza wprowadzać "na piechotę"

      Usuń