QField-mobiilisovellusta kehittämässä
Teemme uusien lisäosien ja toiminnallisuuksien lisäksi myös parannuksia ja kehitystä olemassaolevien FOSS4G-ohjelmistojen ja -sovellusten ytimeen. Viime talvena pääsimme kehittämään QField-mobiilisovellusta.
QField on mobiilisovellus, jolla voi käyttää QGIS-työpöytäohjelmistossa luotuja projekteja maastossa ja esimerkiksi luoda ja editoida kohteita, sekä tuoda aineistot takaisin QGIS:iin. Käytännössä sovellus mahdollistaa vaikkapa kohteiden tietojen päivittämisen (“mikä virkistyskohteen kunto on?”), sijainnin keräämisen suoraan kentältä (“liikennemerkin paikka on tässä”) tai kuvien liittämisen kohteen tietoihin (jolloin työasemalla aineistoa käsittelevät saavat paremman käsityksen kohteesta). Seuraavaksi kerromme lyhyesti projektin vaiheista ja QFieldiin tehdyistä parannuksista.
QFieldin kehitystarpeita
Maanmittauslaitos ottaa QFieldin käyttöön maastokartoitustyössä keväällä 2025. Maanmittauslaitos kehittää nyt uutta maastotietojen tuotantojärjestelmää, jonka yhteydessä QFieldiä on testattu ja tunnistettu esimerkiksi kehitystarpeita sen editointityökaluihin. Tämän vuoksi kaikki projektissamme läpikäydyt tapaukset vaikuttivat ennen kaikkea aineiston editointiin ja uusien kohteiden luomiseen maastossa.
Käytännössä projektin teknisen toteutuksen teki QFieldiä kehittävä OpenGIS.ch, mutta Gispo koordinoi ja testasi ominaisuudet. Aluksi kävimme keskustelua Maanmittauslaitoksen kanssa toiveista ja tarpeista. Näiden pohjalta muotoilimme tarkasti seikat (issue) QFieldin GitHubiin, josta OpenGIS.ch aloitti toimintojen kehittämisen.
Kun korjaukset tulivat sovellukseen, devaajamme pääsivät testaamaan uusia ominaisuuksia, jotta ne toimivat kuten MML:lla oli haluttu. Vaikka QFieldiä voi testata myös tietokoneella, teimme testit älypuhelimella. Pääasiassa maastossa on käytössä puhelin tai tabletti, ja on olennaista, että ominaisuudet toimivat kosketusnäytöllä oikein. Projektia varten kehittäjämme digitoivat esimerkiksi lähiluonnon puita ja muita kohteita.
Uudet ominaisuudet
Uusia ominaisuuksia tuli kehitysprojektin myötä QFieldiin yhteensä neljä.
Undo- ja Redo-napit
QFieldiin luotiin toimintohistoria, johon tallentuvat tasoon tehdyt muutokset. Sovelluksen valikkoon lisättiin nuolet, joilla pääsee toimintohistoriaa eteen- ja taaksepäin. Näin voidaan palata tiettyyn muokkaushistorian hetkeen ja peruuttaa tai tehdä uudelleen toimintoja.
Kosketusnäytön kanssa metsässä esimerkiksi virhepainalluksia tulee hieman herkemmin kuin hiirellä klikkaillessa toimisto-olosuhteissa. Tästä myös Maanmittauslaitokselta projektissa mukana ollut Olli Rantanen oli samaa mieltä: “Muutosten peruminen on tärkeää käyttäjälle, jotta mahdollisista virhetilanteista pääsee sujuvasti palauttamaan tilanteen ennalleen. Esimerkiksi vähän haastavimmissa kenttäolosuhteissa voi vahinkoja käydä tai käyttäjä muuten haluaa palata edeltävään tilanteeseen.”
Toiminnon GitHub-seikka löytyy tästä: https://github.com/opengisch/QField/pull/4849
Editointivaiheen muokkaushistoria
Toinen kehitetty toiminto koskee olemassaolevien kohteiden muokkaamista, esimerkiksi miten muutetaan aluekohteen rajausta tai muotoa. Toiminto mahdollistaa kohteeseen tehtyjen muutosten peruuttamisen ennen kuin ne tallennetaan kohteeseen pysyvästi. Ennen QFieldissä piti perua kaikki kohteeseen tehdyt muutokset, mutta tämän toiminnon ansiosta yksittäisenkin taitepisteen muutoksen voi perua ennen tallennusta. Toiminnon GitHub-seikka löytyy tästä. https://github.com/opengisch/QField/pull/4730
Uuden taitepisteen aloitus lähimmästä sivusta
Tämäkin toiminto koskee olemassaolevien kohteiden muokkaamista. Aiemmin editointi oli QFieldillä hieman hankalaa, sillä käyttäjänäkökulmasta uusi taitepiste meni satunnaiseen kohtaan olemassaolevaa kohdetta. Nyt QFieldin digitointi muistuttaa enemmän QGIS:in digitointia: uusi taitepiste tulee sen sivun keskikohtaan, mikä on sitä lähimpänä. Jos taas lähellä on olemassaoleva taitepiste, kursori alkaa siirtämään sitä uuden taitepisteen luomisen sijaan. Toiminnon GitHub-seikka löytyy tästä: https://github.com/opengisch/QField/pull/4724
Kulman asettuminen valmiiksi määritettyihin asteisiin
Kolmas kehitetty toiminto koskee uusien kohteiden luomista. Toiminto mahdollistaa valmiiden kulmien määrittelyn ennen digitointia, jolloin kohdetta luodessa uusi sivu tulee tässä kulmassa edelliseen sivuun nähden. Esimerkiksi jos tietää, että on tekemässä suorakulmaista kohdetta, voi määrittää 90 asteen kulman valinnaksi ja saada automaattisesti 90 asteen kulmat kohteeseen. Valmiiksi määritellyt kulmat ovat 10, 15, 30, 45 ja 90 astetta. Kulmat voivat olla joko suhteessa näyttöön tai digitoitavaan kohteeseen.
Vaikka kaikki tehdyt muutokset tulivat Maanmittauslaitoksella tarpeeseen, Rantanen nostaa tämän toiminnon Undo- ja Redo-nappien ohella erittäin olennaiseksi parannukseksi: “Samoin hyvin tärkeä ominaisuus on tuo suorakulmaisuuden varmistaminen digitoitavista rakennuksista, jotta maastossa saadaan tarkasti kartoitettua rakennukset. Noiden kulmien asettaminen valmiiksi määriteltyihin asteisiin edesauttaa tätä ja tehostaa kartoittajan työtä.”
Toiminnon GitHub-seikka löytyy tästä: https://github.com/opengisch/QField/pull/4805
Haluaisitko oppia QFieldin käyttöä? Meillä on siihen kurssi: Paikkatiedon mobiilikeruu QFieldillä
QField toimii myös yhteen mittauslaite HappyMiniQ:n kanssa, lue miten tiimimme testasi laitetta kenttämittauksissa.