Bookmarki

Z UMP

na razie bardzo roboczo - cytaty z tego co napisałem gdzie indziej, żeby nie zgubić.

Spis treści

Co to są bookmarki

Od jakiegoś czasu Mapedit++ ma możliwość dołączania/edycji bookmarków, czyli po naszemu "zakładek", ale to trochę niefortunne tłumaczenie - są one rodzajem POI, ale trochę innym niż "normalne" - definiowane są linijkami typu:

;@BM,comment,newpoi,0,0.000000,19.693170,52.551930,0,25,25,0,"",0,0,0,EndLevel="+3",comment="Placowka",
  

czyli podobnie jak załączniki. Bookmarkom można definiować różne typy, a stosownie do typu - także różne pola do edycji. Np. standardowe typu bookmarków pozwalają zaznaczać sobie na mapie znaki ostrzegawcze z ograniczeniem prędkości (osobne pole na wartość) i inne rzeczy. Dzięki przeróbkom ME++ Tomka Babczyńskiego w bookmarkach można także definiować EndLevel. Widoczne są w warstwie POI (czyli można włączyć/wyłączyć ich widoczność wraz z innymi POI), ale być może już niedługo będą w osobnej warstwie włączane/wyłączane niezależnie od POI.

Tyle tytułem wstępu i objaśnienia co to :) Ważniejsze jest, do czego mogą się przydać.

Od jakiegoś czasu eksperymentuję z nimi i przydatne są szczególnie do:

1. Zaznaczania wszelkiego rodzaju błędów.

2. Edycji/poprawiania ślepych i przecięć przez stawianie bojek

3. Weryfikacji POI z zewnętrznych źródeł.

1. Zaznaczanie wszelkiego rodzaju błędów

Nasze "standardowe" skrypty testujące mapy walą błędami do pliku wynik-x.wpt, który sobie można wczytać podczas edycji mapy, dzięki czemu widzimy na mapie chorągiewki w miejscach, gdzie trzeba coś poprawić.

Jeśli mamy wygenerowany wynik-x.wpt z błędami można go przerobić na bookmarki pisząc "make bm", a potem "make mont", żeby bookmarki się wkleiły do mapy. Zalety? - różne błędy wskazywane są w różny sposób (np. czerwone kółko na przecięcia, zielone na ślepe, pomarańczowe na niestyki/niedociągnięcia, niebieski kwadracik na niewpasowane restrykcje, jeszcze inne na błędy numeracji, ślepe jedonkierunkowe, niestyki punktów granicznych, itp. itd. Dodatkowo - bookmarki dają się edytować/kasować pojedynczo, więc gdy poprawimy jakiś błąd, można skasować bookmarka i zająć się kolejnym. W przypadku chorągiewek z pliku WPT można co najwyżej włączyć/wyłączyć wszystkie naraz, albo wygenerować je od nowa w kolejnej iteracji, co nie jest zbyt wygodne.

2. Stawianie bojek w miejsach przecięć lub ślepych

Prawy guzik myszy na bookmarku daje nam m.in. opcję "Convert to POI", co w przypadku błędów typu nieoznakowane przecięcia lub ślepe daje rewelacyjne narzędzie do generowania bojek. Po kolei: "make dead" wygeneruje nam niestyki i ślepe do pliku "wynik-x.wpt", "make bm" przerobi na bookmarki, "make mont" - zmontuje wraz z bookmarkami. Następnie oglądamy co gdzie jest nie tak i w razie potrzeby zaznaczamy pojedynczego bookmarka albo kilka naraz (np. kilka ślepych końców) i za pomocą "Convert to POI" zamieniamy je w zielone bojki (albo czerwone, na przecięciu autostrady z wiaduktem). Potem szukamy następnych (przerobione już nie kłują w oczy, bo boookmarki w ich miejscu zniknęły), na koniec zapisujemy mapę, "make demont" i mamy wszystkie bojki w _nowosci.pnt.

Polecam tę metodę zamiast żmudnego stawiania bojek w miejscach chorągiewek jedna po drugiej...

3. Weryfikacja POI wg zewnętrznych źródeł.

Np. dostajemy listę "wszystkich" bankomatów jakiegoś banku, albo wszystkich stacji benzynowych danej sieci, wszystkich kościołów w okolicy, itp. itd. Część z nich już mamy w UMPie, części nie, a te, które już mamy czasem wymagają uzupełnienia danych adresowych. Znów - najlepiej jest wygenerować bookmarki w miejscu tych nowych POI z zewnętrznego źródła, wczytać do edycji stare i nowe, po czym sukcesywnie weryfikować nowe POI (oznaczone bookmarkami), kasując bookmarki tam, gdzie uporządkowaliśmy dane (kasując jednocześnie stary ALBO nowy punkt), a zostawiając bookmarki tam, gdzie jeszczde coś musimy sprawdzić.

Przykład jak to wygląda, poniżej:

Grafika:Bookmarks1.png

Różne typy bookmarków pokazywane są za pomocą różnych ikon, wyświetlanie na poziomie 3 pozwala je łatwo zlokalizować (bo znikają inne elementy mapy), a po zbliżeniu na konkretne bookmarki możemy je edytować lub przerabiać na POI. A tutaj po zbliżeniu i przejściu na poziom 0:

Grafika:Bookmarks2.png

Zaznaczony niebieskuim kółkiem POI jest nowy, z zewnętrznego pliku (podobnie jak drugi zaraz obok), a zielonym - stary. Bookmarki wskazują miejsce nowych POI (przesunięte nieco, żeby się dało odczytać ich opis). W tym konkretnym przypadku stary POI jest w dobrym miejscu, więc albo trzeba skasować nowe POI i bookmarki, albo przesunąć nowe POI w stare miejsce, korzystając z tego, że mają uzupełnione dane adresowe (po czym też skasować bookmarki, bo miejsce nie wymaga więcej uwagi).

Być może zastosowań będzie więcej - mi się na razie sprawdzają w tych trzech. Wszystkim chętnym polecam spróbowanie i podzielenie się uwagami, ew. dalszą dyskusję na ump-devel.

Co jest potrzebne do edycji bookmarków?

Skrypty obsługujące bookmarki na razie są w wersji eksperymentalno-roboczej, głównie pod uniksa (w awk-u) i zintegrowane z Makefile, ale w miarę potrzeb można je będzie zmodyfikować i poprawić.

Więcej na temat edycji POI z bookmarkami napisałem w komentarzu do FS#6698

Pakiet UMP-owy do bookmarków (ikonki i różne typy) można ściągnąć z załącznika do FS#6493 ( [1] )

Mapedit++ z edycją bookmarków do ściągnięcia jak zwykle ze strony Wojtka Penara (mapedit++1.0.61.394tb_0otm.zip, a już zaraz mapedit++1.0.61.422tb_0otm.zip)