* MapEdit cz.6 - Raster i DGN czyli ..... nie tylko "klikanie" |
Mapy rastrowe a Garmin |
Zalegające na serwerze
grupowym grupy pl.rec.gps screenshoty ekranu Garmina z widocznym
"pseudorastrem" powodują, że od czasu do czasu pojawiają się pytania
typu: Jak to zostało zrobione ? Aby w przyszłości nie odpowiadać już na takie pytania postanowiłem odkurzyć temat "map rastrowych" w odbiorniku Garmin. Zaprezentowana obok "mapka rastrowa" to nic innego jak plik IMG z jednym typem obiektu. Zabawa polega na automatycznej wektoryzacji skanu mapy. Efekt niestety jest stosunkowo "cieniutki", ale ...... |
....... wykonanie takiej mapki mającej służyć jako uzupełnienie komercyjnej mapy samochodowej może być w niektórych wypadkach mało pracochłonną alternatywą dla map "prawdziwie wektorowych". Jak widać na zaprezentowanych obok screenshotach uzupełnienie GPMapy "rastrem" w kolorowym odbiorniku nie wygląda nawet zbyt tragicznie. |
||
Do wykonania wyżej prezentowanego pseudorastra użyłem bezpłatnej wersji programu WinTopo. Jedynymi parametrami pracy programu, które zmieniłem było ustawienie parametrów skali mapy. Do dyspozycji miałem skan 300 dpi mapki Topo 1:50000, zatem ustawienia Vector -> SetScale przyjąłem w następujący sposób: | ||
Pozostałe ustawienia programu pozostawiłem domyślne. Można jednak spróbować innych ustawień. Następnie uruchomiłem wektoryzację a potem: | ||
|
|
Dalej:
|
Na koniec zasadnicze pytanie:
Czy warto robić takie mapki ? Moim zdaniem nie, ale jeżeli ktoś chce
sprawdzić jak to wygląda to można podejrzeć moją mapkę "testową":
|
DGN - konwersja danych wektorowych WODGiK na format Garmin |
Do zapoznania się z tematem zainspirowało mnie pytanie jednego z grupowiczów na Forum Garmin.pl: |
Co w praktyce - użytkownik Garmina - może zrobić z danymi wektorowymi w formacie DGN ? |
Ten artykuł jest odpowiedzią na w.wym. pytanie. W tym miejscu chciałbym podziękować Krzysztofowi Lemańczykowi - właścicielowi firmy North Point GIS Consulting za wprowadzenie mnie w świat "formatu DGN" oraz za nadesłane materiały informacyjne - wykorzystane w artykule. |
Na
początek problemy:
|
Są też dobre informacje: |
Chociaż to tylko 4x4 km to jednak mapkę garminowską można z tych danych zrobić i to przy niewielkim nakładzie pracy. Nasycenie mapki szczegółami w zakresie linii (drogi, ścieżki, strumienie, kanały, linie energetyczne, kolejowe itp.) i wielkokątów (stawki, bagna, lasy, sady, zarośla itp) jest pełne !!! |
||
Poza w.wym. elementami na mapie możemy umieścić przecinki - czyli "dukty" leśne - tu pojawiające się przy skali 120m. |
||
Mapka podobnie jak papierowa "10" topo może także zawierać informacje o granicach działek i ogrodzeniach czy też obrysy budynków. Drogi i ścieżki mają generalnie wspólne węzły zatem bez problemu można mapkę skompilować jako mapkę routowalną. Wyjątkiem są drogi dochodzące do parkingów i placów, które dla potrzeb routingu muszą być "ręcznie połączone" |
Tyle informacji na temat gotowej już mapki. A jak ją zrobiłem ? | |
Zabawę
rozpocząłem od wizyty w WODGiK. Tam po wypełnieniu druku zamówienia musiałem "odczekać" 24 godziny, po czym odebrałem płytkę taką jak na ilustracji obok. Parę słów na temat "wersji". "Wersja pełna" to jeden plik DGN z mapą w wersji "do druku". Plik zawiera nie tylko interesujące nas dane wektorowe, ale także ramki, legendę itp. Ten plik ma niewielką wartość z punktu widzenia UMP-a.
|
|
"Wersja
podstawowa" to wersja zawierająca wyłącznie topograficzne dane wektorowe. Plików
jest 10 i zgodnie z informacjami otrzymanymi z North Point GIS Consulting: pliki powinny nazywać się <ID>x.dgn, gdzie ID to godło/oznaczenie arkusza mapy, zaś x oznacza:
O tym jakie elementy zawierają poszczególne pliki możemy się przekonać podczas lektury "Parametrów konwersji" |
Co dalej ? Tu do wyboru
mamy dwie drogi postępowania: 1. Zosia Samosia Zaawansowani UMP-wcy używają do generacji warstwic zarejestrowaną wersję programu Global Mapper. Również w przypadku plików DGN można skorzystać z Global Mappera. |
|
W omawianym przykładzie pokażę konwersję danych oznaczonych jako "b" - budynki. Dane wektorowe w pliku 1142Bc3b.dgn są w układzie "1992" zatem parametry importu ustawiamy tak jak na ilustracji. | |
Ponieważ MapEdit, z którego
korzystam "nałogowo" nie posiada zbyt rozbudowanych funkcji dotyczących
układów współrzędnych, Global Mappera wykorzystałem nie tylko do konwersji danych,
ale także do "przeliczenia" układów. Urochomiłem opcję: Tools->Configure->Projection i zamieniłem układ na "czysty" WGS_84 - tak jak widać na ilustracji, a następnie wykonałem export danych w formacie strawnym dla MapEdita tj. ESRI shp: ExportVectorData->Shapefile Zapisując osobno pliki wielokątów, linii i punktów (W pliku "b" punkty nie występują) Opisaną tu metodą można przekonwertować wszystkie pliki DGN z wersji "podstawowej" do formatu ESRI. |
|
Dalej trafiamy na mały problem.
Otóż po uruchomieniu MapEdita i wybraniu funkcji: File->Import->ESRI Shape uzyskujemy mało czytelną informację o poszczególnych typach obiektów. Aby sprawdzić co i jak proponuję typ wyjściowy obiektu zostawić jako 0x0000 Unknown i wykonać import, pozostawiając następną zakładkę (nazwy) bez zmian !!! |
|
Ponieważ dane konwertowaliśmy do układu WGS-84 przyjmujemy takie właśnie parametry. | |
A oto efekt na tle podkładu z
rastra. To najgorsza wiadomość - w celu jednoznacznego rozpoznania obiektów
musimy dysponować rastrowym podkładem. Ideałem jest oryginalna mapa 1:10000, ale w
ostateczności możemy wykorzystać dowolny podkład dla danego rejonu. Teraz - podglądając nazwy poszczególnych obiektów oraz oglądając na tle rastra co te obiekty przedstawiają możemy sobie zrobić spis: - dla każdego typu obiektu DGN_LEVEL wybrać sobie "najbardziej pasujący" typ obiektu Garmin. |
|
UWAGA: przy tworzeniu
listy zależności: DGN_LEVEL>Garmin
można posiłkować się
wspomnianymi wyżej: "Parametrami konwersji" w których, o ile się dobrze
zorientowałem nazwom obiektów przypisano numer warstwy w MapEdit widoczny jako
DGN_LEVEL_xx Po wstępnym ustaleniu takiej listy dokonujemy ponownego importu danych - tym razem wprowadzając dla rozpoznanych już obiektów odpowiednio zdefiniowane typy Garmin. |
|
A tu widać efekt. Na takiej mapce
bardzo łatwo "wypatrzeć" czerwone czyli nie zdefiniowane obiekty i uzupełnić
listę zależności: DGN_LEVEL -> Garmin Obiekty, których nie chcemy widzieć w mapce Garmina możemy pozostawić jako Unknown i usunąć je w MapEdit opcją zaznaczania grupowego. |
|
Po "rozpracowaniu" listy obiektów wykonujemy końcowy import kasując "odpaszkowanie" w nazwach. Dzięki czemu obiekty nie będą miały śmiesznych nazw typu: DGN_ LEVEL_24 | |
Pokazana przeze mnie
metoda nie jest skomplikowana, ale wymaga poświęcenia czasu na utworzenie listy
zależności DGN_LEVEL -> Garmin, a czy można szybciej ? Można .............. 2. Z maleńką pomocą przyjaciół. Niesamowitym ułatwieniem w pracy jest wykorzystanie aplikacji Topo10 (zobacz: opis) przygotowanej przez firmę North Point GIS Consulting. Proszę się tylko nie sugerować ceną softu - to jest soft przeznaczony dla WODGiK, a nie dla indywidualnych USERów. Indywidualni użytkownicy przy konwersji pojedyńczych arkuszy mogą - podobnie jak ja - "uśmiechnąć" się do Krzysztofa Lemańczyka i poprosić o "freewarową" konwersję danych. Konwersja danych DGN do formatu ESRI przy użyciu tego softu powoduje, że dane ESRI posiadają tzw. warstwę opisową, zatem opisane przeze mnie wyżej "ręczne" rozszyfrowywanie obiektów nie jest konieczne. |
|
Obiekty z plików DGN z wersji
"podstawowej" po konwersji programem Topo10 do postaci
ESRI shp podczas importu do MapEdita mają rewelacyjną właściwość: można je rozpoznać po .... nazwie |
|
W takim układzie przypisanie odpowiednich typów Garmin dla osoby posiadającej odpowiednią wprawę w UMP-owaniu to naprawdę bułka z masłem ..... | |
Obiekty można przenieść z tymi
"śmiesznymi" nazwami, ja jednak z tego zrezygnowałem. Dane otrzymane z programu Topo10 mogą być (te są) w układzie WGS-84, zatem do ich importu zastosowałem ustawienia jak te pokazane kilka ilustracji wyżej. |
|
A oto efekt na tle rastra. Jeżeli sobie uświadomimy, że import tych danych zajął mi niecałe 2 minuty to .......
Import pozostałych obiektów wygląda podobnie. Ale żeby nie było za wesoło to muszę uczciwie przyznać, że czasami podjęcie prawidłowej decyzji w sprawie przypisania odpowiedniego garminowskiego typu wymaga paru prób. A i tak teraz zrobiłbym to zapewne inaczej :-) |
|
Podsumowanie
|
|
-------------------
L.R. X 2005r