Witajcie ponownie. Zapraszamy do lektury dalszej części opowieści o Move. W tym odcinku zrobimy sobie małą powtórkę z punktów, ale jak to z powtórkami bywa, sporo nowej wiedzy też przemycimy. Wybaczcie, obszerny nam wyszedł ten artykuł, ale przed nami kolejne Święta, to wolnego czasu na lekturę może będzie więcej.
Co można stworzyć z punktów?
Można uznać, że zasadniczo każda mapa powstaje na bardzo gęstej siatce punktów. To tak trochę jak by wziąć ekran monitora, który jak wiecie składa się z wielu gęsto ułożonych pikseli/kropek i zacząć je ze sobą łączyć. Kropki to pojedyncze punkty, ale jak je połączymy to powstają linie. Dzięki liniom możemy już rysować dowolne kształty, które będą odwzorowywały wygląd dowolnych struktur, które widać z lotu ptaka na ziemi.
Pojedyncze Punkty
Dzięki tym kropkom możemy oznaczać różnego rodzaju elementy. Za ich pomocą wskazujemy na ogół najmniejsze elementy np.: słupek z sygnalizacją przy przejściu dla pieszych. Często jednak będziemy mieli potrzebę coś więcej o tym punkcie powiedzieć. W naszym przykładzie możemy chcieć dodać informację, że w tym konkretnym miejscu sygnalizacja jest nie tylko świetlna, ale i dźwiękowa, i wibracyjna. I każda taka informacja będzie zapisana w odrębnym tagu/znaczniku (wspominaliśmy o nich w poprzednich artykułach. Postarajcie się zapamiętać i oswoić z nazwą tag, bo ona będzie najczęściej się pojawiała.
Linie
Z punktów połączonych ze sobą tworzymy linie. Ale żeby było wiadomo, do której linii należy dany punkt, to tę informację trzeba zawrzeć w odpowiedni sposób przy pomocy tagów (o których wspominaliśmy), a dalej kluczy i ich wartości. Nie będziemy się tutaj zagłębiali w całą tę semantykę mapowania. Umówmy się, że wystarczy, że zapamiętacie termin „tag”.
Czyli, gdy wstawiony będzie punkt na ulicy Miodowej w Warszawie, to w jednym z jego tagów będzie zawarta właśnie ta informacja, że on należy do linii, która nosi nazwę „Miodowa”. Oprócz tego, wszystkie punkty wchodzące w skład tej ulicy będą miały zapisane w tagach informacje o tym do jakiej kategorii należy ta droga, z jakimi ulicami się łączy, z czego została wykonana jej nawierzchnia itp. Itd.
W ten właśnie mniej więcej sposób oznacza się większość elementów na mapach, które można przedstawić w formie linii: leśne drogi, szlaki górskie, wąskie i szerokie drogi, nawet z wyszczególnieniem każdego z pasów ruchu na danej jezdni, chodniki, tory kolejowe, rzeki, strumyki, ale również dużo mniejsze elementy takie jak bariery dźwiękochłonne, różnego rodzaju barierki itp. Linie mogą przyjmować dowolne kształty a nawet na siebie nachodzić i oczywiście się przecinać. Ale o tym powiemy później.
Obszary
To wszelkiego rodzaju, dowolnego kształtu figury geometryczne. Ponownie można powiedzieć, że powstają one z punktów połączonych w linie, ale te linie tworzą różnorakie figury: kwadrat, prostokąt, rąb, trapez okrąg oraz każdy inny, dowolny kształt. Obszarami na mapach możemy zaznaczać wiele różnych elementów takich jak: boisko, budynek szpitala, teren mieszkalny, parking, jezioro, morze, obszar leśny, sad itp. Gdy zaś w większym obszarze będziemy chcieli oznaczyć inny, mniejszy, to wtedy nazywamy go wyspą – logiczne, prawda?
Z obszarami mamy też pewien problem. Jak mamy np. boisko do gry w piłkę nożną, to jest przecież spory kawałek terenu a nie jeden mały punkt np. taki jak słupek z sygnalizacją świetlną przy przejściu dla pieszych. I tutaj musimy zastosować pewną sztuczkę. Żeby ten obszar przedstawić jako 1 punkt wyznaczamy jego środek tzw. Centroid i tam wstawiamy punkt z nazwą „boisko do piłki nożnej”. Mamy nadzieję, że nam to wybaczycie – nie bardzo mamy możliwość zrobienia tego w inny sposób. Może prościej by było w ogóle tych obszarów nie wstawiać, ale to znów by była utrata informacji. Jeżeli punkt jest centroidem obszaru, to na końcu jego nazwy usłyszycie „obszar”.
Podsumowanie informacji o tworzeniu punktach
W największym skrócie i uproszczeniu można powiedzieć, że punktami nazywamy na mapach najmniejsze elementy, liniami te długie i wąskie a obszarami po prostu obrysy różnego rodzaju terenów czy obszarów wodnych. I oczywiście wszystkie te elementy mogą nachodzić na siebie, przecinać się ze sobą, a nawet zawierać informacje o trzecim wymiarze – wysokość. Dzięki temu można na dwuwymiarowej mapie zaznaczyć, że np. ulica znajduje się na poziomie 0, wiadukt na poziomie plus 1, a tunel na poziomie minus 1.
Porządkowanie i szukanie punktów
Poniżej opiszemy Wam kilka sposobów na pracę z punktami. Powiemy, jak je można grupować, jak filtrować, jak wyszukiwać i jak odpytywać o najbliższe. Pewnie po pierwszym przeczytaniu wyda Wam się to skomplikowane, ale wierzcie nam, takie nie jest. Nie poddawajcie się, czytajcie wiele razy i ćwiczcie do skutku.
Punkty – w szeregu zbiórka!
Żeby uprościć odnajdowanie punktów z danej kategorii, stworzyliśmy w Seeing Assistant Move ich zbiory. Nazwaliśmy je kategoriami. Gdy odnajdziecie ekran „najbliższe punkty z OSM” to znajdziecie tam różne kategorie punktów np. adresy, jedzenie, transport osób, skrzyżowania, zdrowie itp. W każdej z tych kategorii znajdują się punkty oznaczające miejsca, które wg nas, najlepiej do danej kategorii pasują. I tak, w kategorii „jedzenie” znajdziecie: restauracje, kawiarnie, bary, Z kolei w kategorii „transport osób”: przystanki autobusowe, tramwajowe, kolejowe, postoje dla taksówek itp. Punkty te są ułożone w kolejności – od najbliższego, do najdalszego. W tym miejscu są one pobierane z pewnego promienia np. 2km. Promień ten możemy ustawić w ustawieniach w sekcji „punkty z OSM”.
Może się jednak zdarzyć, że będziemy szukali punktu postoju taksówek, a na liście pojawi nam się wiele przystanków komunikacji miejskiej. Wtedy, wystarczy w polu do filtrowania wpisać minimum 3 znaki nazwy szukanej podkategorii punktów, a na liście pojawią się tylko te, które ten ciąg znaków zawierają. W naszym przykładzie możemy wpisać np. „post…” a wtedy znikną przystanki autobusowe i tramwajowe a pojawią się postoje dla taksówek. I w ten sposób możemy punktom kazać ustawiać się w dowolnych szeregach.
Eksploracja
Powyżej opisane sposoby układania punktów w pewnych zbiorach/szeregach nie wyczerpują wszystkich możliwości z tego zakresu. Dodaliśmy do nich jeszcze inny sposób, który nazwaliśmy eksploracją. Dokładniej mówiąc – eksploracją punktów w wybranym kierunku.
Jak to działa? Wyświetlcie dowolną listę z punktami: punkty z wybranej kategorii OSM, punkty z bazy danych, z zapisanych itd. Gdy będziecie chcieli wiedzieć, w którym kierunku znajdują się punkty z tej listy, aktywujcie akcje i z listy wybierzcie „włącz eksplorację”. Od tego momentu wasz smartfon zacznie się zachowywać trochę inaczej niż standardowo. Trzymając telefon poziomo ekranem do góry możecie zorientować się jakie punkty znajdują się we wskazywanym przez Was kierunku. Ważne, by smartfon posiadał wbudowany kompas. Trzymajcie telefon jak opisaliśmy powyżej i obracajcie go poziomo, jak wskazówkę zegara. Usłyszycie np. “południe, sklep spożywczy, 123m” Pobawcie się tym wskazywaniem, aby zorientować się co znajduje się dokoła was. Eksplorację możecie wyłączyć używając m.in. odpowiedniej akcji albo wychodząc z danej listy z punktami.
Warto jeszcze wiedzieć, że wskazania kompasu wbudowanego w smartfon, które w tym przypadku filtrują listę punktów są dość podatne na zakłócenia elektromagnetyczne. Z tego powodu, np. w pojazdach takich jak samochód, autobus, tramwaj, pociąg itp. Jego wskazania często będą błędne. Może się zdarzyć, że smartfonem faktycznie będziecie wskazywali kierunek południowy, a otrzymacie komunikat, że wskazujecie kierunek zachodni. No cóż, nie ma ideałów – czasami z prawami fizyki nie da się wygrać.
Szukanie punktów
Jeszcze inną metodą pewnego rodzaju porządkowania punktów będzie ich wyszukiwanie po nazwie. Żeby się Wam jednak nie pomyliło, nie jest to ta sama czynność, o której pisaliśmy powyżej. Tam pisaliśmy o filtrowaniu punktów wg nazwy lub jej fragmentu, ale filtrowaniu punktów, które zostały nam wyświetlone z danej/najbliższej okolicy. Ta funkcja polega trochę na czym innym. Na wyszukiwaniu punktów z określoną nazwą w bazie punktów z całego Świata.
Ok, to jak to zrobić? W sumie to dość proste. Tu warto wspomnieć, że w Seeing Assistant Move mamy możliwość szukania punktów w dwóch, a nawet trzech różnych źródłach.
W przypadku wersji aplikacji na Android, możemy poszukiwać punktów w zasobach OSM oraz Map Google. Z kolei w iPhone’ach w OSM i Mapach Apple.
Przeszukiwanie zasobów OSM
Jeśli chcecie wyszukać punkt w OpenStreetMap, znajdźcie na ekranie “Wyszukaj adresy i punkty w OSM” i wpiszcie w pole edycyjne elementy, które występują w jego nazwie np. „szkoła”. Promień wyszukiwania możecie ustawić wtedy na wartość „cały świat”. Użyjcie przycisku „szukaj”, a po chwili powinny wam się pojawić na liście punkty, które w nazwie będą zawierały wyraz „szkoła”. Pisaliśmy już, że nie ma ideałów – prawda? I w tym miejscu też mamy okazję się o tym przekonać. Aplikacja nie działa idealnie, a może raczej nie do końca w oczekiwany sposób. Znajdzie wam szkoły niekoniecznie znajdujące się najbliżej Was. Łatwo jednak można sobie z tym poradzić. Dopiszcie w polu wyszukiwania nazwę miejscowości np. „szkoła warszawa” I teraz sprawdźcie, czy jesteście bardziej zadowoleni z wyszukanych wyników? Jak nie, to podajcie jeszcze więcej informacji o rejonie, w którym szukacie tej szkoły np. „szkoła Warszawa Białołęka”. Warto podać przynajmniej nazwę miejscowości, a jak znacie to np. dzielnicy albo nawet konkretnej ulicy. Trochę więcej wysiłku, ale za to jakie wyniki! Dzięki temu, mechanizm wyszukiwania poda Wam punkty w tym precyzyjniej określonym obszarze. Tak działa mechanizm wyszukiwania punktów w OSM, z którego korzystamy – nazywa się on Nominatim. Jak się przekonacie, nie jest on może idealny, ale wciąż jeden z lepszych –posiada wiele innych zalet.
Wyszukiwanie adresów w Mapach \Google i Apple.
W przypadku tych wyszukiwarek, sprawy mają się trochę prościej –podawany jest jeden najbliższy punkt. Ale wyszukiwać można głównie adresy. Czy ktoś kiedyś powiedział, że nie można mieć wszystkiego?
Pokaż najbliższy adres lub najbliższy punkt z OSM Nominatim.
Na zakończenie, rzecz chyba najprostsza. Jeżeli nie macie czasu na wpisywanie nazwy punktu, to możecie poprosić naszą aplikację o podanie nazwy adresu/punktu, który znajduje się najbliżej naszego aktualnego położenia – tylko jednego punktu/adresu. W aplikacji odnajdziecie odpowiednie przyciski. Używajcie ich i sprawdzajcie jakie są zwracane wyniki. Tutaj też nie wszystkie odpowiedzi będą dla was idealne, ale zawsze będą lepsze niż absolutny brak informacji – prawda?
Ten powyższy sposób to jednak nie przeszukiwanie zbioru punktów, ale odpytywanie serwera dostawcy w trybie tak zwanego odwrotnego geokodowania. Move wysyła informację o naszym położeniu (współrzędne geograficzne), a w zamian dostaje dane najbliższego adresu/punktu, jaki wyszukał program obsługujący zbiory dostawcy danych mapowych.
Pamiętajcie, że tu znów trochę inne wyniki będą zwracały mechanizmy od Google’a czy Apple’a a trochę inne z OSM.
Dlaczego nie używamy tylko jednego serwisu danych mapowych?
Właśnie z tego powodu, że żaden z tych serwisów z osobna nie potrafi dostarczać nam potrzebnych danych mapowych w formie, którą w danym momencie potrzebujemy: pojedyncze punkty, punkty pogrupowane w zbiory tematyczne itp. Dlatego musieliśmy użyć ich więcej niż 1.
Ponadto, pamiętajcie, że Kula Ziemska nie jest zmapowana w każdym z tych serwisów z tym samym poziomem dokładności. Bardzo różnie też bywa z aktualnością danych mapowych. W punktach z OSM może się zdarzyć np. że dostaniecie informacje o jakimś sklepie, który już nie istnieje – został zlikwidowany. Chyba stosunkowo najbardziej aktualne dane mapowe znajdziecie u gigantów, takich jak Apple i Google i to w dużych aglomeracjach miejskich. Jak pewnie wiecie, również na mapach od tych dostawców pojawiają się nie aktualne dane.
Dodatkowo, wiemy, że w przypadku społeczności osób mapujących w OSM są duże różnice w zależności od kraju. W jednych społeczność ta jest bardziej aktywna a w innych mniej. Ponadto, proces mapowania, mimo, że jest całkiem dobrze usystematyzowany, to w całym tym gąszczu różnych zasad, zdarzają się błędy i różnice w sposobach mapowania. A jak system nie jest w stu procentach spójny, to pojawiają się różne problemy z odczytem tych danych.
Przykładem mogą być przystanki autobusowe. W różnych miastach, dane szczegółowe o przystankach są zapisywane w różnych tagach np. w tagu „ref” lub „local ref”. Żeby się do tych różnic dostosować, to my musimy robić różne triki w aplikacji. To z kolei generuje potrzebę wstawiania kolejnych przełączników – i aplikacja się robi co raz bardziej skomplikowana. A to dalej powoduje to, że wy się musicie co raz więcej uczyć. Na pocieszenie możemy powiedzieć, że my też musimy nieustannie podnosić swoje kompetencje i rozwiązywać wiele problemów. I sztuczna inteligencja w tym zakresie jeszcze niewiele jest w stanie pomóc. Na razie jest potrzebna nasza inteligencja – ludzka.
Zmiana schematu
Na końcu naszych artykułów, często pojawiała się zapowiedź w stylu: „W następnym odcinku…”. Tym razem wybierzemy jednak nieco inne zakończenie. W tym artykule przekazaliśmy Wam bardzo dużo konkretnych informacji i kilka różnych sposobów pracy z aplikacją Seeing Assistant Move. Każda z nich wymaga ich solidnego przećwiczenia – przecież to trening czyni mistrza, prawda?
Zapraszamy Was zatem do intensywnej pracy w celu opanowania wszystkich opisanych przez nas funkcji w tej aplikacji. Zdecydowaną ich większość możecie ćwiczyć nie wychodząc z domu.
W poprzednich artykułach staraliśmy się przybliżyć Wam, w sposób możliwie najbardziej przystępny wiele wiedzy z zakresu sposobów mapowania Świata i obsługi aplikacji Seeing Assistant Move. Zbliża się koniec roku, a to często czas na podsumowania, bilanse, a w nowym roku, na noworoczne postanowienia. Bardzo serdecznie Was zatem zapraszamy do tych działań w odniesieniu do aplikacji Seeing Assistant Move lub innych aplikacji nawigacyjnych, szczególnie tych dedykowanych osobom niewidomym i słabowidzącym. Naprawdę warto się przyłożyć do nauki ich obsługi. Dzięki nim dużo rzadziej będziecie potrzebowali pomocy innych osób, rzadziej się będziecie gubili, zawsze będziecie wiedzieli, gdzie się znajdujecie, co jest w waszej okolicy itp. Wierzcie nam – naprawdę warto.
Warto też przeczytać cały cykl o Seeing Assistant Move od początku. Na pewno znajdziecie tam jeszcze coś ciekawego. Coś, co może umknęło waszej uwadze, albo coś, co teraz lepiej zrozumiecie. Dla ułatwienia, poniżej podajemy linki do wszystkich poprzednich artykułów z tego cyklu.
Dla osób bardziej ambitnych, tych, dla których nasze artykuły pojawiają się zbyt rzadko i zawierały zbyt mało konkretnych i przydatnych informacji, polecamy podjęcie prawdziwego wyzwania. A jest nim niewątpliwie dokładne przesłuchanie pewnego podcastu. Przesłuchanie to jest wyzwanie duże, ale mistrzostwem świata będzie jego słuchanie i na bieżąco uczenie się obsługi Seeing Assistant Move. Link do wspomnianego podkastu wstawiamy poniżej. Nie przejmujcie się, że jest z roku 2022 – wciąż jest bardzo aktualny.
https://tyflopodcast.net/seeing-assistant-move-stan-na-rok-2022/
Niespodzianka
No ładnie, poprzeczka już wisi nad czubem choinki, ale nie martwcie się. wiemy, że nie wszyscy potrafią tak wysoko skakać – my też nie zawsze dajemy radę. Bardzo się jednak staramy, żeby dostarczyć „prezenty” dostosowane do: potrzeb, wieku, predyspozycji i sił. Brzmi tajemniczo? To dobrze, taki mieliśmy zamiar. Niech tak tajemniczo przez jakiś czas pozostanie. Święta się zbliżają, te Święta to też prezenty … Może i od nas Mikołaj coś przyniesie? Szukajcie w Sklepie Play i AppStore. a nie pod waszymi choinkami. Gdyby się spóźnił, to nie miejcie mu tego za złe – Nasza fabryka prezentów też pracuje pełną parą, ale czasami pojawiają się nieprzewidziane problemy.
Może się też zdarzyć, że po tak dużym wysiłku, który wkładamy w przygotowanie prezentu, potrzebny nam będzie dłuższy wypoczynek. Dlatego prawdopodobnym jest, że kolejny artykuł z tej serii pojawi się po dłuższej przerwie. Ale nic straconego. Nie ma tego złego … Zerknijcie powyżej, na wyzwania do podjęcia. Nie zabraknie ich pewnie nawet do wiosny.
Wciąż namawiamy – Rusz się z Move!!!
A gdybyście i Wy zechcieli nam sprawić jakiś prezent, to ogromnym by była informacja o tym, że ktoś z Was, chociaż jedna osoba, dzięki tym artykułom, dzięki motywacji jaką się staramy wyzwolić, zebrała siły i choćby w podstawowym zakresie zaczęła używać Seeing Assistant Move. Zamieszczajcie takie informacje w komentarzach albo wysyłajcie na e-mail sa@tt.com.pl.
Konsultacja: Sławomir Strugarek.