Pikkuprojekti: umpikujat merkitty OSM:iin

(Raportoin samasta englanniksi “Development” foorumissa)

Tuli mieleen merkitä OSM:iin kaikki umpikujat ja muutkin “cut-edges”, niin että ulkoa samoten, näe heti että “tällä tiellä ei pääse läpi”. Keikka tehty, kuvankappaus:

Oikeat kartat täällä :sunglasses: Toistaiseksi vain 2 pientä aluetta on tarjolla (länsi-Espoo ja Kirkkonummi), niin tämä on vielä “proof of concept” vaiheessa. Täytyy vielä keksiä, kuinka voisi palvella isompaa aluetta ilman sitä, että tallennetaan kaikki “tiles” (mitkä ne suomeksi ovat?) koko maalle. Tervetuloa kurkistamaan! :slight_smile:

Hyvä ajatus etenkin pitkän matkan pyöräretkille asutuilla seuduilla. Mutta miten määrittelet umpikujan? Jos tieltä pääsee toiselle epävirallista polkua pitkin, onko se umpikuja? Entä jos polun paikalla onkin kevyen liikenteen väylä? Entä, jos väylä on merkitty ’ei talvikunnossapitoa’ (tarkoittaa: ei tarvi kunnossapitoa)?

Merkitsitkö umpikujat käsin jollakin määreellä (esim. deadend=yes), vai tunnistitko ne ohjelmallisesti? Voisikohan tuollaisia piirtosääntöjä opettaa OsmAndille? Sehän osaa nykyään käyttää offline-vektorikarttoja. Kartat sille tekee erillinen OsmAndMapCreator-ohjelma. Jos umpikujat on hankala tunnistaa ’lennosta’, OsmAndMapCreator voisi lisätä keinotekoisen määreen (esim. deadend=yes tai deadend:car=yes, deadend:bicycle=yes) kaikkiin tunnistamiinsa umpikujiin.

Umpikujat tunnistava ohjelma voisi samalla valittaa umpikujista, jotka ovat jotain muuta kuin highway=service, highway=residential, highway=path, highway=footway, highway=cycleway, tms. Isommat tiethän muuttuvat yleensä ensin vähempiarvoisiksi ennen muuttumistaan umpikujaksi. Tällä tavalla voisi löytää kartassa olevia virheitä, kun teiden risteyskohdassa ei olekaan yhteistä solmua vaan esimerikiksi kaksi lähekkäistä solmua.

Rakensin graafin kaikista poluista joissa on "highway=*’ tagi. Merkitsin siellä kaikki “cut edges”.

Ohjelmallisesti tietysti :slight_smile: Menetelmä on kuvattu lyhyesti tässä, lähdekoodi linkitty samasta.

On loistava idea lisätä tämän tyyppinen toiminallisuuden klientti-puoleen (ei palvelin-puoleen). Vaikeuksia tuottaa se, että tieto, onko polku “cut edge” vai ei, on globaalinen, ei lokaalinen. Toisinpäin, vaikka se on globaalinen periaatteessa, käytännössä todella harvoin löytyy “cut edge” (ja varsinkin umpikuja), jota ei voi tunnista katsomassa vain muutaman kilometrin lähitieverkkoa. Voitaisiin laittaa jotain tämmöistä tehtävälistalle :roll_eyes:

Totta kai! Olen jo itse korjannut OSM:illa muutama tie, josta tuli “umpikuja”, vaikka ei pitäisi tulla.

Kiitos kaikista ehdotuksista!