Tagowanie ulic, a nawigacja

Pojawia się w naszym kraju coraz więcej smartfonów i tabletów z Androidem. Jako że te pierwsze i część z tych drugich posiada odbiornik GPS, naturalne jest używanie ich do nawigacji. Oczywiście najlepsze są programy płatne (na dniach ma się ukazać AutoMapa na Androida), jednak mnóstwo osób szuka rozwiązania darmowego i trafia w Android Market na jeden z programów wykorzystujących OSM. Dodatkową zaletą jest możliwość ściągnięcia mapy i użytkowania nawigacji całkowicie offline - bez płacenia za mobilny Internet.
Co najmniej dwa z tak działających popularnych programów (Navit i jego klon ZANavi oraz OSMAnd) maja problemy ze znalezieniem ulicy offline jeśli nie jest ona opatrzona tagiem is_in:city. Oczywiście zawsze możemy powiedzieć, że skoro np. Nominatim sobie radzi to i Navit powinien, ale patrząc na to z punktu widzenia producenta/programisty aplikacji, która ma się zmieścić w ograniczonych zasobach smartfona wybór jest prosty: zamiast implementować zawodny algorytm “najbliższego” miasta lub dość skomplikowany algorytm zawierania się ulicy w granicach administracyjnych, korzystamy z oficjalnego tagu is_in:city, który właśnie do tego służy.
Niestety, w Polsce większość ulic nie jest tak oznaczana co skutkuje “niedziałaniem” wyszukiwania w programach nawigacyjnych i w konsekwencji obniżaniem opinii o całym projekcie OpenStreetMap.

Ostatnio w swojej okolicy dodałem is_in:city do większości ulic, dzięki czemu zaczęły się poprawnie wyszukiwać.
Jak uważacie, czy w kontekście całej mapy Polski dodawanie tego tagu ma sens? Czy czekamy aż się darmowe nawigacje poprawią?

IMO najsensowniej byłoby gdyby w OSM były wszytkie granice administracyjne i nawigacje potrafiły z tego korzystać. Mówiąc o granicach, mam na myśli granice zrobione jako relacje, z właściwym admin_level i z dodaną miejscowością jako admin_centre w tejże relacji.

Zgadzam się z przedmówcą - działanie klienta to problem klienta.

Gdybyśmy chcieli dodawać wszędzie tagi is_in, bardzo często mielibyśmy tą samą informację dwukrotnie: is_in oraz granicę dzielnicy/miasta/gminy/powiatu/… Zaraz trzeba byłoby tworzyć skrypty pomocnicze do edytorów, które z automatu dodawałyby/usuwałyby is_in przy przesuwaniu granic miast, dodawałyby is_in przy stawianiu ulic w miastach itp., programy zaczęłyby używać is_in i granic zamiennie, co doprowadziłoby do jeszcze większego bałaganu - to takie moje pesymistyczne zapatrywanie na temat :slight_smile:

Do tej pory wszelkie elementy w bazie wystarczy otagować w jednym miejscu i tyle - proste i nieskomplikowane :slight_smile:

Co innego, jeśli granic administracyjnych nie ma wcale.

Może da się jakoś zmusić Automapę do pracy z mapami osm? :wink:

No cóż, w Katowicach relacje opisujące granice administracyjne wyglądają OK, offline’owe szukanie ulic w w/w aplikacjach widocznie jeszcze nie umie z tego skorzystać. Może to zgłoszę do Navita, ale aktywność ichniego forum trochę zniechęca.
Niniejszym zaprzestaję stosowania tagu is_in:city jako “controversial”.

@tomianek: Właściciel AutoMapy zainwestował spore pieniążki w zbudowanie własnej wektorowej mapy. I zrobił to dobrze bo przez wielu użytkowników nawigacji AM uważana jest za bezkonkurencyjną (przynajmniej w Polsce). Życzyłbym sobie aby dane w OSM były z nią porównywalne przynajmniej w zakresie ulic. Dopiero wtedy Twój pomysł nie będzie taki śmieszny :wink:

is_in jest tagiem, którego lepiej nie stosowac :-/ juz wymienione bylo dlaczego. Wiem, że w Free MapFactor działa dobrze bez tych tagów, oczywiscie jak nie ma granic to ulice sa brane do najblizszej miejscowosci co czesto wprowadza w błąd.

Z tego co pamiętam, to Osmand nie używa tego tagu, głównym problemem z jego działaniem w dużych miastach jest otagowanie wielu miejsc (osiedli (często skaładających się z pojedynczego bloku) itp) jako place=suburb (przeznaczonych dla dzielnic), co w efekcie powoduje przypisanie adresów do tych osiedli jako miast - a dla właściwych dzielnic problem wynika z braku granic dzielnic wewnątrz miast.
Rozwiązanie: nieopisywanie innych obiektów niż dzielnice jako place=suburb, oraz wprowadzenie granic dzielnic.

Navatar tez mial ten problem - pomysl is_in* oczywiscie byl pierwszym, ktory wpadł nam do głowy ;), potem zaprzęgliśmy do roboty TERYT ale to też się średnio sprawdziło (aczkolwiek jak ktoś planuje zrobić tylko dla Polski to można się trochę tym wspomóc) ale zgadzam się z rhn, że to nie bardzo ma sens. Koniec końców poradziliśmy sobie z tym problemem orając dane OSM i wymyślając algorytm (inny niż nominatim), jak ktoś chce może sobie sprawdzić u nas jakość wyszukiwania.

Lada moment puścimy wersję z pełną numeracją budynków z OSM i wtedy już będzie komplet.

alurg: a ten mechanizm szukania jest dostępny przez jakieś API? Czy raczej tylko "for internal use?

Na razie internal bo jeszcze testujemy numeracje - ale w sumie możemy to po pod jakimś GETem wystawić dla OSM.

To byłoby świetne rozwiązanie dla promocji OSM. Osobiście uważam, że właśnie wyszukiwanie adresów i POI to największy bolączka OSM w tej chwili.
Przydałby się serwis on-line umożliwiający wyszukiwanie adresów i POI wg zadanych kryteriów w połączeniu z wyszukiwaniem trasy. Bezpośrednie porównanie z Google Maps, czy Targeo (tu bym się bał :slight_smile: ) mogłoby większą liczbę osób przekonać do OSM.

A wracając do wątku. To jestem również przeciwnikiem stosowania tagu “is_in”, ale “boundary” mamy w kiepskim stanie i niespecjalnie jest co z tym zrobić.

Oooo, witam developera Navatara! Też zainstalowałem, ale używam rzadziej, bo nawigacja działa tylko online.
Macie jakieś plany buforowania kafelków mapy tak, żeby można było zaplanować trasę będąc w zasięgu WiFi?
Potwierdzam, szukanie adresów działa znacznie lepiej niż w Navit i OSMAnd.
Kibicuję Wam trochę bo na Waze się sparzyłem (pomysł podobny, wykonanie do d.), a Navatar ma potencjał, życzę mnóstwa zadowolonych użytkowników!

Zgadzam się, że do promocji OSM brakuje nam takiego po prostu mini google maps / mini zumi - tzn. mapka polski i pole do wyszukiwania. Tu możemy pomóc jako jedno z możliwych źródeł zwracających adresy oraz wyznaczające trasy (jako oczywiscie alternatywa dla nominatim i innych implementacji routingu)

Odnośnie POI to też to obsługujemy tj. mamy jedno pole jak w google i jak zamiast adresu wpiszesz sobie nazwe poika np.: Pub Lolek (nasz firmowy ulubiony :wink: ) to tez to znajdujemy i nawigujemy do tego miejsca.

Jezeli mialoby to pomoc w promocji OSM to mysle ze stronke z tilesami na openlayersach musialoby osm polska wystawic i tylko musimy uzgodnic jakis proste API do wyszukiwania i routingu i mozemy na koniec wrzesnia takie cos uruchomic.

Co mnie jeszcze boli w promocji OSM to to, że wiele instytucji Państwowych korzysta na swoich stronach z … tak tak google mapek. A tak mogliby korzystac z OSMa bo czemu maja promowac jakas korporacje zamiast rozwiazania otwarte/publiczne.

Mam pytanie trochę obok tematu ale jednak go dotyczące a nie chce tworzyć nowego wątku.
Chodzi mi o zapis danych OSM binarnie w plikach (tak jak np. AutoMapa) aby stworzyć nawigacje offline. Ktoś zna techniki jak się do tego zabrać ?
Śledząc forum są tu ludzie którzy robią nawigacje więc może powiedzą jak to się robi albo dadzą jakiegoś linka do zasobów.

Zainteresuj się np. http://wiki.openstreetmap.org/wiki/Libosmscout chyba, że projektujesz jakis wlasny format pliku.

Właśnie chodzi mi o niewyważanie otwartych drzwi. Wielkie dzięki.