Muokkausten helppo peruminen?

Mahtaako JOSMissa tai jossain muussa OSM-työkalussa olla mitään helppoa tapaa peruuttaa muokkauksia? Esimerkiksi huomasin että joku oli muuttanut Malminkartanon puiston (http://www.openstreetmap.org/browse/way/100673850/history) puistosta (leisure=park) metsäksi (landuse=forest) ja samalla lähialueelta hävisi metsäalueita (natural=wood). Ko. kaveri varmaan on tarkoittanut ihan hyvää ja jotain on ehkä hävinnyt vahingossa. Saako siis noita muutoksia helposti peruttua siten että ko. käyttäjän kaikkia muutoksia ei peruttaisi, vai onko helpointa vaan piirtää puuttuvat asiat uusiksi?

Kerran painoin JOSMissa vahingossa B:tä (kohdista pisteet tasavälein viivalle) enkä huomannut sitä ajoissa. Siinä meni jokin metsäpolku ja pätkä Jokelantietä suoraksi. Polkuhan ristesi vaikka kuinka monen tien kanssa, joten tuloksena oli aikamoista siksakkia risteäville teille. Joku korjasi käsin Jokelantien, mutta minä palautin tuon polun pisteet seuraavasti:

Latasin rikkinäisen tien JOSMilla ja tallensin levylle. Sitten muutin sen node-id:t sedillä muotoon

http://api.openstreetmap.org/api/0.6/node/1139477107/2
http://api.openstreetmap.org/api/0.6/node/1139477109/2

jne. ja korjasin käsin versionumeroita pienemmiksi. Sitten

wget -O tiedosto.osm -i node_version.txt

ja sitten pientä tekstieditointia (alku- ja loppulöpinöiden poisto ja versionumeron palautus pykälää suuremmiksi sekä action=‘modify’:n lisäys) ja lataus JOSMiin.

Ilpo Järvinen, joka minulle virheestä huomautti, mainitsi seuraavaa:

Kärkölän seudulla ovat edelleenkin ne isot maankäytöt (kaksi multipolygonia) rikki. En ole viitsinyt yrittää korjata, kun ne ovat niin tolkuttoman isoja, mutta kohta on kai pakko ottaa lusikka kauniiseen käteen.

Lisäys: Jos tiedät virheellisen muokkauksen id:n, niin OSM History Viewer auttaa. Tässä on minun kötöstykseni (muokkaus 8642511).

Tšekkailin hieman mitä tämä em. puistosta metsäksi muokkaaja on muokkaillut. Hieman ikävästi ei ole merkinnyt muokkauskommenttia suurimpaan osaan muutossetteihinsä. Yhdessä pienessä muutoksessa kommenttina oli “Rakennus purettu”. Silmäilin sitä ja kohde oli Espoon Uusmäessä Vanha Hämeenkyläntie 52. Puretun rakennuksen ääriviivat oli poistettu kokonaisuudessaan. Eikö olisi mielekkäämpää jättää ääriviivat paikoilleen ja muuttaa building=yes -tägi building=no -tägiksi ja ehkäpä vielä note=Bing outdated, building demolished… -tägillä höystettynä? Nythän OSMissa on “pelkkää ilmaa” ja joku toinen muokkaaja saattaa Bingin ilmakuvan perusteella piirtää tuon puretun rakennuksen uudelleen.

OT:na silmään pisti puretun rakennuksen ympärillä sijaitsevat kohteet. Vanha Hämeenkyläntie näkyy sijaitsevan melko synergisesti Bingin ilmakuvaan nähden, paitsi juuri Sotilastorpantien kohdalla. VH tekee siinä risteyksessä hassun mutkan. Sotilastorpantie taas on hieman siirtyneen näköinen Bingin ilmakuvan perusteella, kun taas läheinen Varaväentie näkyy kohdentuneen siististi Bingin ilmakuvaan. Suurin osa rakennuksista ovat “siirroksissa” Bingiin nähden, paitsi tuon puretun rakennuksen etelänaapuri (Krenatöörinkatu 1), joka sijaitsee melkein Bingiin nähden kohdallaan. Tuon talon pihapiirin pensasaita taas on hieman vinksallaan. En nyt jaksa kahlata Bingin ilmakuvien tarkkuusketjua lävitse, mutta kuinka tarkasti sijoittuvat Bingin ilmakuvat oikeaan maastoon?

Jos puretut rakennukset ja muut kadonneet asiat jätetään kartalle, niin minun mielestäni on sitten parempi muuttaa avaimeksi was:building jne. Nythän kaikki rakennukset saa kannasta helposti valitsemalla kaiken, jolla on ylipäätään olemassa building-tägi, ilman että tarvitsee ottaa huomioon erikoistapauksia “paitsi jos building=no”

Kyllä ne tuollapäin ovat suunnilleen samassa kuin Garmin Edge 705:n tallennusjälki, jonka tarkkuudeksi Garmin väittää 4 tai 5 metriä avoimilla paikoilla. Juuri eilen muokkailin muutaman viikon vanhasta pyöräilyreittijäljestäni. Leppävaarassa on rakenneltu kiertoliittymiä, mutta muuten Bing-kuvat näyttivät ajantasaisilta.

Korjasin viimein ne Kärkölän multipolygonit niin, että se vetää toivottavasti mkgmapin hiljaiseksi. Edelleenkin siellä on monia päällekkäisiä alueita (metsää ja peltoa päällekkäin), mutta ne saa joku aluetta tunteva muokkailla.

Corine-importeissa näyttää olevan sellainen perusongelma, että määreet on annettu viivoille eikä multipolygon-relaatiolle. Ilmeisesti virhe syntyi siitä, että joku asiaa heikosti tunteva yhdisti kaksi viivaa, niin että niissä sitten luki kaksi Corine-koodia puolipisteellä erotettuna sekä vielä landuse=farm ja natural=wood. Siirsin määreet relaatioihin ja pilkoin viivat. Jos määreet olisivat olleet alun perin relaatioilla, tätä virhettä ei ehkä olisi päässyt syntymään.

Näkyi siellä kyllä sellaistakin hölmöyttä, että sekä role=inner- että role=outer-viivoilla oli samat määreet. Tarkoittaako se jonkin tulkinnan mukaan sitä, että päällekkäiset määreet kumoavat toisensa? JOSM ja mkgmap piirtävät silloin ‘reikiin’ samaa tavaraa kuin reikien ulkopuolellekin. Itse asiassa mkgmap taitaa piirtää reiät umpeen silloinkin, kun role=outer-viivalle on määritelty piirtotyyli. Merkitkää siis se natural=, landuse=, building=, amenity= tai mikä milloinkin multipolygon-relaatiolle älkääkä role=outer-viivalle.

Sain nyt tuon poistetun metsäalueen palautettua suht kivuttomasti käyttämällä JOSMin Reverter-plugaria. Ohjeet tuon käyttöön löytyy: http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Reverter#Usage

Käytännössä piti “vain” selvittää poistetun metsäalueen changesetin id, joka taas ei ihan yksinkertaista ollut kun en ihan tarkkaan tiennyt, milloin tuo metsäalue kartalta hävisi (löysin lopulta tuota kautta selailemalla: http://matt.dev.openstreetmap.org/owl_viewer/map ). Sitten changesetin id vain Reverter-plugariin, joka palautti kaikki ko. changesetin muutokset. Sitten vain valitsin metsäalueen ja JOSMista File…Upload selected, koska en halunnut tuon changesetin kaikkia muutoksia perua.

Kaksi oivaa apua deletoitujen objektien palauttamiseen on

  1. Potlatch 1 (osm.org Edit tabissa vaihtoehtona P2:lle, ja Remotelle).
    P1:ssa vasemman alakulman nurkilla näkyy Advanced ja siita edelleen kun valitsee Undelete, niin P1 näyttää punaisella kaikki alueella deletoidut objektit.
    Kokemukseni on, että tämä toimii parhaiten kun on aika korkealla zoom-tasolla (z17+). Riippuu datan määrästä alueella, tosin.
    Käskitykseni on, että tämä poistettujen objektien selaus on pääsyy sille, että P1 on vielä vaihtoehtona editoreissa.

  2. Tuore deletoituja objekteja esittelevä palvelu on Simon Poolen erinomaisen CLEANMAPin UNDELETE_IT-kerros. Tein pikalinkin eteläiseen-/keski-Suomeen bitlyllä:
    http://j.mp/osm-undelete-fi
    Tuossa kun zoomailee haluttuun kohtaan ja piirtää/raahaa suorakulmion Ctrl+Shift pohjassa, niin palvelu avaa ikkunan, jossa näkyy kaikki alueella olevat poistetut ODbL-puhtaat objektit.

En tarkalleen muista kuinka konservatiivinen CLEANMAP on ODbL-puhtauden tulkinnassa, mutta yhtä kaikki, palvelu ei näytä kaikkia deletoituja objekteja.

Tuli tehtyä virhe, joka näkyikin vasta suuremmalla zoomauksella. Potlatch 2 muokkaustilassa ei näkynyt, joten tuli tallennettua.

Miten siis peruutan omatekemän mokan? En ole oikein löytänyt mitään käyttökelpoista keinoa. Historia listassa se on, joten kai sen pystyy (pitäisi ainakin) perua.

Siinä objektien laatu ikäänkuin invertoituu.
http://www.openstreetmap.org/#map=12/61.3056/27.9149 ja kun zoomaa lähemmäs maa muuttuu vedeksi ja päinvastoin.