diff --git a/src/GS002/.vscode/settings.json b/src/GS002/.vscode/settings.json deleted file mode 100644 index 637ab945..00000000 --- a/src/GS002/.vscode/settings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "r.lsp.promptToInstall": false -} \ No newline at end of file diff --git a/src/GS002/01_harjoitus_1.Rmd b/src/GS002/01_harjoitus_1.Rmd index 8351bd79..d56f485d 100644 --- a/src/GS002/01_harjoitus_1.Rmd +++ b/src/GS002/01_harjoitus_1.Rmd @@ -1,142 +1,133 @@ -# Harjoitus 1: Digitoinnin perusteet +# Harjoitus 1: Georeferointi **Harjoituksen sisältö** -Harjoituksessa luodaan vektoriaineisto hyödyntäen digitoinnin perustyökaluja. +Harjoituksessa harjoitellaan georeferointia vastinpisteiden avulla. **Harjoituksen tavoite** -Harjoituksen jälkeen osallistuja osaa lisätä ja luoda tasoja QGISiin. +Koulutettava oppii tuomaan kuvatiedoston QGIS-ohjelmaan ja georeferoimaan sen koordinaatistoon. **Arvioitu kesto** -30 minuuttia. +45 minuuttia. ## Valmistautuminen Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 1**". -## Muokkauksen yleisasetukset +QGISin lisäosat tarjoavat käyttöösi suuren valikoiman erilaisia taustakarttoja. Eri rajapinnoista saatavat taustakartat toimivat samaan tapaan kuin projektiin avatut rasteritasot: niiden läpinäkyvyyttä voi säätää, mutta ne eivät sisällä ominaisuustietoja. -Muokkauksen toimintoa ja muita yleisiä muokkaustyöasetuksia voit muuttaa päävalikon ikkunassa **Asetukset \> Valinnat \> Digitointi**. Jos et esimerkiksi halua, että ominaisuustietojen muokkausikkuna tulee esiin jokaisen polygonin piirtämisen jälkeen niin rastita **Älä näytä ominaisuustietojen pop-up lomaketta kohteen luonnin jälkeen**. Jätä se kuitenkin päälle tällä kertaa. Kokeile myös vaihtaa kohteiden muokkausväri keltaiseksi (**Kuminauha**) ja **Taitepisteen** symbolin tyyli ja koko. Paina **OK**, niin asetukset tulevat voimaan. +Helpoin tapa lisätä OpenStreetMap-kartta on etsiä se Selain-paneelista **XYZ Tiles** -rivin alta ja tuplaklikata sitä: -![](img/harjoitus_1/image1.png) +![](img/harjoitus_3/image22.png) -## Editoinnin valmistelu +Lisää taustakarttoja saat lataamalla Python-skriptin osoitteesta: -Aloitetaan tekemällä editointia helpottavia valmisteluja. Ensimmäisenä aktivoi omaan projektiisi **Työkalut-valikosta** (**Näytä -> Työkalut**) seuraavat työkalut: +Toimi siis seuraavasti: -- Digitoinnin työkalupalkki +1\. Kopioi ylläolevan osoitteen koko sisältö -- Digitoinnin lisätyökalujen palkki +2.  Avaa QGISin Python-konsoli (Lisäosat → Python-konsoli) -- Tarttumisen työkalut\ +3\. Liitä kopiomasi sisältö avautuneeseen Python-konsoliin \>\>\>-merkkien jälkeiseen laatikkoon -![](img/harjoitus_1/image2.png) +![](img/harjoitus_3/image23.png) -Usein ensimmäinen operaatio aineistojen luomisessa on taustakartan lisääminen. Taustakartta helpottaa liikkumista ja aineistojen tarkistusta. Uudemmissa QGISin versioissa on OpenStreetMapin taustakarttatasot saatavilla valmiina. Lisää taustakartta projektiin vasemmalta tuplaklikkaamalla  **Selain-paneelista XYZ Tiles \> OpenStreetMap**. +4\. Paina Enter tai klikkaa \"Suorita komento\" -nappulaa ![](img/harjoitus_3/image24.png){width="35" height="31"} -![](img/harjoitus_1/image3.png) +Nyt käytössäsi pitäisi olla lisää taustakarttoja selainikkunan XYZ Tiles -kohdassa. -Zoomaa kartta Suomen kohdalle ja koska haluamme tehdä tarkkaa editointia oikeassa koordinaattijärjestelmässä, muutetaan projektin koordinaattijärjestelmä Suomen kansalliseen **EUREF-FIN 3067**. Klikkaa projektin oikeasta alakulmasta, jossa lukee tällä hetkellä EPSG:3857, jonka QGIS on asettanut taustakartan perusteella. +### Lisää taustakarttoja - QuickMapServices -lisäosa -Paina tämän jälkeen **OK,** jonka jälkeen avautuva ikkuna kysyy sinulta koordinaattimuunnoksesta. Valitse uudestaan **OK** ja nyt projektisi on oikeassa koordinaattijärjestelmässä. +Laajemman valikoiman erilaisia taustakarttoja saat käyttöösi lisäosalla nimeltä **QuickMapServices**. Asenna se yläpalkin Lisäosat-valikosta ja avaa sen jälkeen Verkko-valikosta **Search QMS**. Avautuvasta paneelista voit etsiä erilaisia taustakarttoja ja satelliittikuvia, suodattaa niitä sijaintisi perusteella, ja saada tarvittaessa lisätietoja (esim. käyttöoikeuksista) kartasta. Vihreä pallo kertoo, että kartta on saatavilla. Etsi vaikka satelliittikuva tulevan harjoituksen avuksi. -## GeoPackagen luonti +Voit valita taustakartaksi jonkun selkeän kartan, josta saat helposti näkyville tien, rakennukset ja ympäröivän alueen, kuten satelliittikuvan tai OpenStreetMapin. Georeferoitava kohde on Tampereen keskustassa. Voit joko etsiä kohteen kartalta tai hyödyntää QGISin hakutoimintoa OSM-kartan kanssa. QGISin alapalkissa vasemmalla on upotettu Etsi-toiminto, johon on sisäänrakennettu esimerkiksi OpenStreetMapin aineistoon perustuva Nominatim Geocoder, jonka avulla voimme etsiä osoitteita. -Luo uusi GeoPackage-taso valitsemalla päävalikosta **Tasot \> Luo taso \> Uusi Geopackage-taso**. +![](img/harjoitus_3/image25.png) -![](img/harjoitus_1/image4.png) +Lisää kenttään ensin merkki **\>** ja kirjoita tämän jälkeen osoite **Pyynikki** ja tuplaklikkaa esiintulevasta listasta viimeistä osoitetta. Kartan pitäisi zoomata suoraan valittuun paikkaan. Georeferoidaan kartta Tampereen Pyynikistä, voit zoomata karttaa ulospäin, jotta näet Tampereen keskustan ja Pyynikin alueen. -GeoPackage on tietokanta, jossa tieto on tallennettu tauluihin. Anna tietokannan nimeksi **"Aluesuunnitelma"** ja luotavan tason nimeksi **"Alueet"**. Valitse taulun geometriaksi polygoni ja koordinaattijärjestelmäksi **3067**. Lisää GeoPackageen nyt muutama muu uusi sarake seuraavasti: -- Nimi: Alueen_nimi / Tyyppi: teksti +## Georeferoijan toiminta -- Nimi: Rakennusala / Tyyppi: kokonaisluku +Avaa georeferoija **Tasot -> Georeferoija**. -- Nimi: Pinta-ala / Tyyppi: desimaalinumero +![Kuva 1. Georeferoija löytyy- tasot valikosta](img/harjoitus_3/image26_uusi_versio.png) -![](img/harjoitus_1/image5.png) -Muista aina klikata **Lisää kenttälistaan -painiketta**, jotta jokainen kenttä ilmestyy listaukseen. +Kun avaat Georeferoijan, aukeaa uusi ikkuna, jossa itse georeferointi toteutetaan. Georeferoijan ikkunaan voidaan avata rasterikuva **Avaa rasteri**... -painikkeesta ![](img/harjoitus_3/image27.png). Painikkeesta avautuu ikkuna, jonka avulla georeferoitavan kuvan voi valita koneen tiedostojärjestelmästä. Tuettuina on useita kymmeniä eri rasteriformaatteja aina perinteisistä JPEG- ja PNG-formaateista tehokkaisiin JPEG2000- ja ECW-formaatteihin.Voit georeferoida myös PDF:ää, mutta niiden laatu saattaa kärsiä georeferoinnissa. -::: hint-box -Kokonaisluku (integer), 32-bittinen vai 64-bittinen? Mistä tietää, kumman valitsee?\ -\ -Ensin käyttötarkoitus: mitä lukuja kenttään tallennetaan?\ -\ -16-bit unsigned integer voi sisältää luvun väliltä -32 768 - 32 767\ -Signed: 0 - 65 535.\ -32-bit unsigned integer voi sisältää luvun välillä −2 147 483 648 - 2 147 483 647\ -Signed: 0 - 4 294 967 295.\ -64-bit unsigned integer voi sisältää luvunvälillä −9 223 372 036 854 775 808 - 9 223 372 036 854 775 807\ -Signed: 0 - 18 446 744 073 709,55.\ -\ -QGIS:issä (versioissa 3.10+) integerit ovat oletuksena signed-tyyppisiä, ellei toisin mainita.\ -Toisakseen tulee harkittavaksi, mihin tuota tietoa tallennetaan: Geopackage, PostgreSQL vai joku muu? Mitä enemmän käytetään bittejä, sitä suuremmaksi kasvaa tiedostojen koot (myös PostgreSQL:ssä on tiedostoja tietokannan takana). Mitä suuremmat tiedostot, sitä hitaammin asiat sujuvat.\ -\ -Kolmanneksi pitäisi ottaa huomioon, että siirretäänkö kyseistä aineistoa johonkin toiseen järjestelmään / tiedostoformaattiin. Tuleeko tilanteita, joissa 64bit tallennettu tieto pitääkin viedä tiedostoon, joka ei salli noin suuria numeroita (kuten Shapefile).\ -::: +Kurssihakemistossa on kaksi eri kuvaa, ilmakuva Tampereelta vuodelta 1946 sekä peruskarttarasteri vuodelta 1953. Voit valita kumman vaan georeferoitavaksi. Kun haluttu kuva on valittu tiedostojärjestelmästä ja valinta vahvistettu Open-painikkeesta, avautuu käyttäjälle valittu rasteri näkyviin pienen latauksen jälkeen. -## Aloita geometrioiden editointi +Vanhemmissa versioissa tässä kohtaa avautuu käyttäjälle Coordinate Reference System Selector -ikkuna. Tähän ikkunaan syötetään tieto siitä koordinaattijärjestelmästä, johon georeferoitava rasterikuva halutaan saattaa. Tässä esimerkissä käytettäväksi koordinaattijärjestelmäksi valitaan **ETRS89-TM35FIN (EPSG:3067)**, mutta yhtä hyvin koordinaattijärjestelmäksi voidaan valita mikä tahansa QGIS:n tukema koordinaattijärjestelmä. -Etsitään editoitava alue kartalla hyödyntäen QGISin hakutoimintoa OSM-kartan kanssa. QGISin alapalkissa vasemmalla on upotettu Etsi-toiminto, johon on sisäänrakennettu esimerkiksi OpenStreetMapin aineistoon perustuva Nominatim Geocoder, jonka avulla voimme etsiä osoitteita. +Tämän vaiheen jälkeen määritellään georeferoinnissa käytettävät asetukset. Tämä tapahtuu avaamalla **Asetukset**-valikosta **Muunnoksen asetukset** -ikkuna (kuva 4). Saman ikkunan saa avattua myös työkaluriviltä keltaisesta ratassymbolista. -Etsiminen tapahtuu kirjoittamalla `>` jonka perään osoite. Tässä harjoituksessa editoimme Vallilanlaakson aluetta Kumpulassa, joten kirjoitamme hakukenttään `> Vallilanlaakso` +![Kuva 4. Georeferoinnin asetukset määritellään Asetukset-valikosta löytyvän Muunnoksen asetukset-painikkeen takaa](img/harjoitus_3/image28.png) -![](img/harjoitus_1/image8.gif) +**Muunnoksen asetukset** -ikkunassa määritellään muunnoksessa käytettävät asetukset (kuva 5). Toteutettavan muunnoksen osalta Muunnos parametrit -kohta) valittavissa on muunnoksen tyyppi, interpoloinnissa käytettävä menetelmä ja koordinaattijärjestelmä. Muunnoksessa syntyvän tiedoston osalta ikkunassa voidaan määritellä syntyvän tiedoston nimi, tallennussijainti sekä pakkausmenetelmä. -::: hint-box -Jos QGIS versiosi on vanhempi voi olla että tarvitset Nominatim Locator Filter- lisäosan. Asenna se Lisäosat välilehden kautta. Kun olet asentanut lisäosan, hae kohdetta muutoin samaan tapaan mutta aloita haettava osoite `osm` -sanalla eli kirjoita Etsi- laatikkoon `osm Vallilaanlaakso` +Tarkista, että muunnoksen tyyppi on **Lineaarinen**, menetelmä **Nearest Neighbour** ja aseta koordinaattijärjestelmäksi **EPSG:3067**. -Huomaa että Vallilanlaakso -sanan jälkeen on lisättävä vielä välilyönti, jotta haku tapahtuu. -::: +Ikkunassa on täpättävät kohdat (Output Settings -kohta) myös vastinpisteiden (GCP-pisteet) tallentamiseksi, ns. ESRI World -tiedoston luomiseksi varsinaisen georeferoinnin toteuttamisen sijaan ja nolla-arvojen määrittämiseksi läpinäkyviksi. Lisäksi valittavissa on kohta oman vapaavalintaisen spatiaalisen resoluution asettamiseksi muunnoksen yhteydessä luotavalle kuvalle. -Seuraavaksi aloitamme aineiston muokkaamisen klikkaamalla **Editointi päälle/pois -painiketta** ![](img/harjoitus_1/image11.png). Huomaa, että **Digitoinnin työkalupalkin** työkalut aktivoituvat. +Muunnoksesta on mahdollista saada ulos myös kartta ja raportti (Reports-kohta); näiden tallennuspaikat määritellään tarvittaessa. Varmista myös, että ikkunan alareunasta löytyvä \"Avaa tulosrasteri QGISissä kun valmis\" täppä on aktiivisena. Näin saat suoraan valmiin georeferoidun rasterin auki QGISin karttaikkunaan georeferoinnin jälkeen. -![](img/harjoitus_1/image12.png) +![Kuva 5. Muunnoksen asetukset -ikkuna halutuilla asetuksilla (Transformation Settings)](img/harjoitus_3/image29.png) -Valitse työkaluksi **Lisää monikulmiokohde** ja aloita alueiden digitointi. Hiiren vasemmalla näppäimellä voit klikata kartalla kohteen kulmapisteet. Kun monikulmio on valmis, niin napauta hiiren oikeaa näppäintä, uusi monikulmio on luotu. Digitoi alla olevaa kuvan punaista aluetta vastaava monikulmio. +## Panosta vastinpisteisiin -![](img/harjoitus_1/image13.png) +Kun muunnoksen asetukset on onnistuneesti määritelty, paina asetusikkunasta \"OK\". Nyt voidaan siirtyä määrittelemään vastinpisteitä. Valitse työkaluriviltä löytyvä Add Point -työkalu (kuva 6). Tämän painikkeen vierestä oikealta löytyvät tarvittaessa painikkeet jo määriteltyjen vastinpisteiden poistamiseen ja muokkaamiseen. Lisää piste -painikkeen painaminen aktivoi työkalun, jolla osoitetaan georeferoitavalta kuvalta piste. -Kun editointi on valmis, QGISiin avautuu **Alueet - Kohteen attribuutit -ikkuna**. Laita **Alueen_nimi-kohtaan "Aluerajaus"**. Muihin kenttiin ei vielä tarvitse täyttää mitään. +![Kuva 6: Georeferointi aloitetaan lisäämällä rasterukuvalle oikaisupisteitä](img/harjoitus_3/image30.png) -![](img/harjoitus_1/image14.png) +Kun Lisää piste -työkalulla on osoitettu piste georeferoitavalta kuvalta, avautuu Kirjoita karttakoordinaatit (Enter Map Coordinates) -ikkuna (kuva 7). Ikkunaan voi halutessaan syöttää koordinaattitiedot käsin, mutta huomattavasti kätevämpi tapa on poimia ne QGIS-paikkatietosovelluksen pääikkunasta painamalla \"Karttaikkunasta\"-painiketta. -Luodaan seuraavaksi uusi GeoPackage-taso, mutta kokonaan uuden tietokannan luomisen sijaan teemme aikaisemmin luotuun **Aluesuunnitelma-GeoPackageen** vain uuden tason. Anna taulun nimeksi **"Kulkureitit"** ja lisää siihen seuraavat kentät: +Usean näyttöruudun käsittävä setup helpottaa merkittävästi vastinpisteiden napsuttelua. Mikäli tällaista järjestelyä ei ole käytettävissä (esim. operoitaessa pienellä kannettavan ruudulla), voidaan elämää helpottaa täppäämällä \"Piilota goereferoinnin ikkuna automaattisesti\" -kohta. Tällöin Georeferencer sukeltaa automaattisesti piiloon Karttaikkunasta -painiketta painettaessa. -- Nimi: Reitin_nimi / Tyyppi: teksti +![Kuva 7: Oikaisupisteen tiedot annetaan Kirjoita karttakoordinaatit -ikkunassa](img/harjoitus_3/image31.png) -- Nimi: Pituus / Tyyppi: desimaalinumero +Kun pisteelle on koordinaatit (joko QGIS-pääikkunasta osoittaen tai käsin syöttämällä), nähdään kentissä X / Itä ja Y / Pohjoinen numeroarvot (kuva 8). Tässä esimerkissä käytetään ETRS89-TM35FIN-koordinaattijärjestelmää (EPSG:3067), jonka koordinaatit ovat kuvassa. Vaihtoehtoisesti voit valita alasvetovalikosta toisen käytettävän koordinaattijärjestelmän (valittava siis samaksi kuin pääkanvaasi näkymässä) -![](img/harjoitus_1/image15.png) +Onnistunut ja laadukas georeferointi vaatii useiden vastinpisteiden määrittelyn. Kuten aiemmin todettiin, vastinpisteiksi kannattaa valita esimerkiksi rakennusten kulmia, kiinteistörajoja ja muita helposti ja yksiselitteisesti tukiaineistosta tulkittavia kohteita. Vastinpisteet kannattaa lisäksi pyrkiä osoittamaan huolellisesti ja tarkasti sekä eri puolille georeferoitavaa kuvaa. -Kun klikkaat **OK**, QGIS kysyy, haluatko korvata olemassa olevan GeoPackage-tiedoston (ja sen taulut) tällä tiedostolla vai lisätä tiedostoon/tietokantaan uuden tason. Valitse **Lisää uusi taso**, jolloin projektiin lisätään jälleen uusi taso. +Tarkkuus korostuu etenkin silloin, kun vastinpisteitä osoitetaan ainoastaan muutamia. Mitä enemmän vastinpisteitä voidaan osoittaa, sen pienempi on yksittäisestä pisteestä aiheutuva vaikutus muunnokseen. -![](img/harjoitus_1/image16.png) +Kun vastinpisteen tiedot ovat Kirjoita karttakoordinaatit -ikkunassa ja oikea koordinaattijärjestelmä valittu, voidaan vastinpiste tallentaa painamalla OK-painiketta. Tällöin vastinpiste tallentuu ns. vastinpistetauluun (GCP-taulu) ja ikkuna sulkeutuu. Uuden pisteet saa lisättyä Lisää piste -painikkeesta. -Laita nyt vuorostaan tämän juuri luodun tason editointi päälle klikkaamalla **Tason muokkaus päälle/pois -kuvaketta** (kynäikoni). Koska haluamme että kulkureittien editointi alkaa aivan alueen reunasta, on kytkettävä **Tarttuminen (snapping)** päälle. Voit tehdä tämän klikkaamalla **Ota tarttuminen käyttöön -painiketta** ![](img/harjoitus_1/image17.png). Valitse ensimmäisestä alasvetovalikosta **Kaikki tasot** ja toisesta valikosta kuvan mukaisesti **Piste** ja **segmentti**. Aseta **tarttumisherkkyydeksi** 12 pikseliä (oletusherkkyys). +![Kuva 8: Oikaisupisteen tiedot syötetty](img/harjoitus_3/image32.png) -![](img/harjoitus_1/image18.png) +![Kuva 9: Jos huomaat että haluat poistaa jonkun vastinpisteen, voit sen tehdä Poista piste -työkalulla. Aktivoi työkalu ja klikkaa sillä georeferoint-ikkunassa näkyvää pientä punaista pistettä (vastinpiste)](img/harjoitus_3/image33.png) -Luodaan seuraavaksi kulkureitti, joka kulkee alueen läpi kuvan mukaisesti. Anna tälle kulkureitille nimeksi **"Raitiotie"**. Jätä pituus-kenttä vielä tyhjäksi. +![Kuva 10: Poistaminen voidaan tehdä myös muunnospistetaulussa klikkaamalla haluttua riviä hiiren oikealla ja valitsemalla \"Poista\"](img/harjoitus_3/image34.png) -![](img/harjoitus_1/image19.png) +## Vastinpisteiden tarkastelu ja varsinainen georeferointi -Päivitetään attribuuttitaulun kenttiin puuttuvat tiedot **Kentän arvojen laskin -työkalun** avulla. Avaa laskin klikkaamalla **Attribuuttien työkalupalkista** **Avaa kentän arvojen laskin -painiketta** ![](img/harjoitus_1/image20.png) ![](img/harjoitus_1/image21.png) +Kun tarvittava määrä vastinpisteitä on syötetty, voidaan niitä tarkastella vastinpistetaulun (GCP-taulu) avulla. Mikäli vastinpistetaulu ei näy automaattisesti alareunassa paneelina, sen voi avata Näytä-valikosta löytyvän Paneelit-valikon alta. -Klikkaa avautuvasta ikkunasta **Päivitä olemassa oleva kenttä** ja valitse alasvetovalikosta **Pituus-kenttä**. Kirjoita **Lauseke-kenttään** lauseke, joka laskee viivamaisen kohteen pituuden sekä pyöristää sen yhden desimaalin tarkkuudelle: +Vastinpistetaulussa on nähtävillä kaikki osoitetut vastinpisteet (kuva 10). Tässä esimerkissä on määritelty kymmenen vastinpistettä. Jokaisella vastinpisteelle esitetään taulussa sijainti georeferoitavalla kuvalla (Lähtö X ja Lähtö Y) ja sijainti tukiaineistossa (Kohde. X ja Kohde. Y). Muista valita vastinpisteitä ympäri georeferoitavaa kuvaa georeferoinnin laadun varmistamiseksi. -::: code-box -round(\$length, 1) -::: +![Kuva 11: Esimerkki vastinpisteiden sijainnista ilmakuvassa. Vastinpisteet näkyy punaisella](img/harjoitus_3/image38.png) + +Koordinaattien lisäksi okaiselle pisteelle lasketaan virhe X- ja Y-suunnassa. X- ja Y-suuntaisten virhelukujen lisäksi jokaiselle pisteelle on laskettu residuaali, joka kuvaa ko. pisteen kokonaisvirhettä. Ideaalitilanteessa residuaaliarvo olisi mahdollisimman lähellä nollaa. + +Huomaa, että virhearvot esitetään pikseleinä. Mikäli jokin vastinpiste eroaa virhearvojen (Residuals/Residuaalit) osalta muista, kannattaa se poistaa ja määritellä uudelleen. Mitä suurempi residuaaliarvo pikselillä on, sitä suurempia virheitä se voi aiheuttaa georeferoinnissa. Tässä esimerkissä voisi siirtää tai määritellä uudelleen pisteet, joiden residuaali on esimerkiksi yli 3. Residuaalit lasketaan uudelleen aina kun teet uusia vastinpisteitä, joten panosta pisteiden sijoittamisen laatuun. -![](img/harjoitus_1/image22.png) +![Kuva 12: GCP-taulussa nähdään kaikki syötetyt vastinpisteet](img/harjoitus_3/image36.png) -Laita lopuksi molempien tasojen tason muokkaus pois päältä klikkaamalla kynäkuvaketta. Tallenna kaikki muutokset tasoihin. Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + S** tai päävalikosta **Projekti \> Tallenna**. +Kun tarvittava määrä vastinpisteitä on määritelty ja ne on todettu hyviksi vastinpistetaulua tarkastelemalla, voidaan käynnistää varsinainen georeferointi. Tämä tapahtuu Georeferencer-ikkunan **Start Georeferencing** -painikkeesta (kuva 13). + +![Kuva 13: Georeferointi käynnistetään Start Georeferencing -painikkeesta](img/harjoitus_3/image37.png) + +Mikäli muunnoksen asetukset (Transformation Settings) -ikkunassa on laitettu täppä kohtaan \"Load in QGIS when done\", avautuu georeferoitu kuva automaattisesti QGISiin georeferoinnin jälkeen. Mikäli täppää ei ole laitettu, voi kuvan lisätä myös manuaalisesti Open Data Source Manager -toiminnon kautta. + +Miten alue on muuttunut? Voit verrata taustakarttaa tai uudempaa ilmakuvaa tai satelliittikuvaa vuoden 1946 ilmakuvaan esimerkiksi säätämällä tason läpinäkyvyyttä. Voit myös hyödyntää lisäosaa **MapSwipe**, jonka avulla voit tarkastella karttaa vierekkäin. MapSwipen voi ladata lisäosavalikon kautta. + +Jos on aikaa ja haluat harjoitella, voit georeferoida myös toisen kartan alueelta ja verrata niitä keskenään. + +Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + T** (englanninkielisessä QGISissä **CTRL + S**) tai päävalikosta **Projekti \> Tallenna**. ::: hint-box -Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti koulutustuki\@gispo.fi -sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. +**Psst! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelusta. Lähetä kysymyksesi tai kommenttisi osoitteeseen [koulutustuki\@gispo.fi](mailto:koulutustuki@gispo.fi){.email}!** ::: - diff --git a/src/GS002/02_harjoitus_2.Rmd b/src/GS002/02_harjoitus_2.Rmd index d33235be..dab672ea 100644 --- a/src/GS002/02_harjoitus_2.Rmd +++ b/src/GS002/02_harjoitus_2.Rmd @@ -1,215 +1,124 @@ -# Harjoitus 2: Edistyneet digitointiominaisuudet +# Harjoitus 2: Digitoinnin perusteet **Harjoituksen sisältö** -Harjoituksessa tehdään edistyneitä digitoinnin operaatioita QGISillä. +Harjoituksessa luodaan vektoriaineisto hyödyntäen digitoinnin perustyökaluja. **Harjoituksen tavoite** -Harjoituksen jälkeen osallistuja osaa hyödyntää monipuolisemmin editoinnin ominaisuuksia. +Harjoituksen jälkeen osallistuja osaa lisätä ja luoda tasoja QGISiin. **Arvioitu kesto** -45 minuuttia. +30 minuuttia. ## Valmistautuminen -Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 2**". Lisää projektiin seuraavat aineistot: +Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 2**". -- **Aluesuunnitelma.gpkg (Alueet- ja Kulkureitit-tasot)** +## Muokkauksen yleisasetukset -- **OpenStreetMap** +Muokkauksen toimintoa ja muita yleisiä muokkaustyöasetuksia voit muuttaa päävalikon ikkunassa **Asetukset \> Valinnat \> Digitointi**. Jos et esimerkiksi halua, että ominaisuustietojen muokkausikkuna tulee esiin jokaisen polygonin piirtämisen jälkeen niin rastita **Älä näytä ominaisuustietojen pop-up lomaketta kohteen luonnin jälkeen**. Jätä se kuitenkin päälle tällä kertaa. Kokeile myös vaihtaa kohteiden muokkausväri keltaiseksi (**Kuminauha**) ja **Taitepisteen** symbolin tyyli ja koko. Paina **OK**, niin asetukset tulevat voimaan. -## Kohteisiin tarttuminen (snapping) ja rakennustila (construction mode) +![](img/harjoitus_1/image1.png) -Tässä harjoituksessa teemme rakennuksia rakennuspaikoille. Luo **Aluesuunnitelma-GeoPackageen** uusi taso rakennuksia varten seuraavasti: +## Editoinnin valmistelu -Aloita valitsemalla työkalupalkista jälleen **Uusi GeoPackage-taso**. Tällä kertaa kuitenkin valitsemme **Tietokanta**-kenttään kohteeksi aiemmin luodun Aluesuunnitelma-Geopackagen, jolloin uusi taso tuleelisätyiksi siihen. Kun olet valinnut Aluesuunnitelma.gpkg:n tietokannaksi, anna tason nimeksi "Rakennukset" ja täytä tason tiedot kuten alla olevassa kuvassa: +Aloitetaan tekemällä editointia helpottavia valmisteluja. Ensimmäisenä aktivoi omaan projektiisi **Työkalut-valikosta** seuraavat työkalut: -![](img/harjoitus_2/image9.png) +- Digitoinnin työkalupalkki -Tallennettaessa QGIS kysyy, korvataanko aiemmin luotu GeoPackage vai lisätäänkö uusi taso siihen. Valitse Lisää uusi taso. +- Digitoinnin lisätyökalujen palkki -![](img/harjoitus_2/image10.png) +- Tarttumisen työkalut -Seuraavaksi laita **Tarttuminen** ![](img/harjoitus_2/image11.png), **Seuraaminen** ![](img/harjoitus_2/image12.png) **ja Self-snapping ![](img/harjoitus_2/image13.png)**päälle **Tarttumisen työkalut -paneelista**. Aseta muut tarttumisasetukset seuraavan kuvan mukaisiksi: +![](img/harjoitus_1/image2.png) -![](img/harjoitus_2/image14.png) +Usein ensimmäinen operaatio aineistojen luomisessa on taustakartan lisääminen. Taustakartta helpottaa liikkumista ja aineistojen tarkistusta. Voit käyttää mitä tahansa karttaa harjoituksessa pohjana, georeferoimiasi karttoja tai OpenStreetMapia. Uudemmissa QGISin versioissa on OpenStreetMapin taustakarttatasot saatavilla valmiina. Lisää taustakartta projektiin vasemmalta tuplaklikkaamalla  **Selain-paneelista XYZ Tiles \> OpenStreetMap**. -Valinnat järjestyksessä vasemmalta oikealle: +![](img/harjoitus_1/image3.png) -- Tarttuminen -- Kaikki tasot (klikkaa kuvaketta ja voit valita asetuksen pudotusvalikosta) +## GeoPackagen luonti -- Taitepiste (klikkaa kuvaketta ja voit valita asetuksen pudotusvalikosta) +Luo uusi GeoPackage-taso valitsemalla päävalikosta **Tasot \> Luo taso \> Uusi Geopackage-taso**. -- 10 +![](img/harjoitus_1/image4.png) -- px (pikseliä) +GeoPackage on tietokanta, jossa tieto on tallennettu tauluihin. Anna tietokannan nimeksi **"Aluesuunnitelma"** ja luotavan tason nimeksi **"Alueet"**. Valitse taulun geometriaksi polygoni ja koordinaattijärjestelmäksi **3067**. Lisää GeoPackageen nyt muutama muu uusi sarake seuraavasti: -- Ei käytössä +- Nimi: Alueen_nimi / Tyyppi: teksti -- Ei käytössä +- Nimi: Pinta-ala / Tyyppi: desimaalinumero -- Ei käytössä +![](img/harjoitus_1/image5.png) -- Ota seuraaminen käyttöön +Muista aina klikata **Lisää kenttälistaan -painiketta**, jotta jokainen kenttä ilmestyy listaukseen. -- Self snapping (tarttuminen työn alla olevaan digitoitavaan kohteeseen) - -## Rakentamistila - -Jos piirtämisen apuna tarvitaan etäisyyttä tietystä pisteestä tai tiettyä kulmaa johonkin olemassa olevaan linjaan, rakentamistilan avulla saa näkyville apuviivoja piirtämisen tueksi. Rakentamistilan ollessa aktiivisena ei voi piirtää, mutta sen avulla voidaan hakea näkyviin tarvittavia apuviivoja esim. etäisyyden tai kulman suhteen. Rakentamistilaa voi käyttää ennen tai kesken piirtämisen. - -Rakentamistila aktivoidaan digitoinnin lisätyökalut -paneelista löytyvästä ![](img/harjoitus_2/image17.png)![]()-nappulasta. Sen saa päälle/pois päältä myös pikakomennolla **C**. - -Huom! Rakentamistilassa ollessa ei piirretä mitään. Kun olet saanut rakentamistilassa toivotut apuviivat näkyville ja haluat aloittaa varsinaisen piirtämisen, rakentamistila tulee sulkea joko painamalla hiirellä ![](img/harjoitus_2/image19.png) tai **C**-näppäimellä. Apuviivat jäävät näkyviin ja voit piirtää niiden avulla pisteen haluamaasi paikkaan. - -## Rakennuksen piirto apuviivojen avulla - -Lisätyökalujen avulla voi saada näkyville apuviivat ja tarttumisasetukset tiettyihin kulmiin, esimerkiksi 45 tai 90 asteen välein. Toiminnon saa päälle digitoinnin lisätyökalut - paneelista (ikkunan vasemmassa laidassa) ![](img/harjoitus_2/snap_common_angles.png)-nappulasta. Oletuksena nollakulma on vaakatasossa piirtoalueen suhteen, mutta piirtämisen alettua kulma lasketaan viimeisen piirretyn viivan mukaan ja näkyviin tulee tukiviivoja haluttujen kulmien kohdalle. - -### Sitten vain harjoittelemaan.... - -Aseta **Rakennukset-tason** editointi päälle kynäkuvakkeesta. Kun valitset **Lisää polygonikohde -työkalun**, **Digitoinnin lisätyökalut** -kuvake aktivoituu ![](img/harjoitus_2/image15.png) ja klikkaamalla kuvaketta niin saat **hallintapaneeliin** QGISiin. - -![](img/harjoitus_2/image16.png) - -Laita vielä **Snap to common angles/tartu yleismpiin kulmiin --\> 90.0, 180.0, 270.0, 360.0** päälle![](img/harjoitus_2/snap_common_angles.png) - -Aloita nyt **Rakennukset-tason** editointi. - -1. Harjoittele ensin rakennuksien piirtämistä apuviivojen avulla alla olevan kuvan mukaisesti - - ![](img/harjoitus_2/tarttumisen_apuviivat.gif) - -2. Seuraavaksi harjoitellaan alueen reunaviivan suuntaisesti rakennuksen piirtämistä. Toimi seuraavasti: - -- Varmista, että digitoinnin lisätyökalut ![](img/harjoitus_2/image15.png)![]() on päällä. - -- Piirrä piste kartalle haluamaasi kohtaan. Digitoinnin lisätyökalut -valikossa aktivoituvat kohtisuoruustyökalu ![](img/harjoitus_2/image18.png) ja yhdensuuntaisuustyökalu ![](img/harjoitus_2/yhdensuuntaisuus_tyokalu.png). - -- Valitse haluamasi työkalu (kohtisuoruus tai yhdensuuntainen): - - - - - a) painamalla sen nappia hiirellä, tai - - - - - b) paina **P** yhdestä kolmeen kertaa aktivoidaksesi työkaluja järjestyksessä: kohtisuoruus -\> yhdensuuntaisuus -\> vapaapiirto. - -- Kun jompi kumpi työkalu on valittuna, klikkaa viivaa, jonka suhteen haluat yhdensuuntaisuutta tai kohtisuoruutta. Huom! tämä klikkaus ei piirrä pistettä, vaan valitsee työkalulle peilauskohteen. Näkyviin tulee valitusta työkalusta riippuen joko yhdensuuntainen tai kohtisuora apuviiva. - -- Klikkaa toinen piste kartalle apuviivan avulla haluamaasi kohtaan. Jos haluat, voit määrittää etäisyyden painamalla **D** (fokus etäisyyden syöttökenttään), syöttämällä etäisyyden metreinä ja painamalla **enter**. - -- Jatka piirtämistä haluamallasi tavalla. Kohtisuoruutta ja yhdensuuntaisuutta voi käyttää piirtämisen aikana toistamalla askelia - -## Suorakulmaisen polygonin piirtäminen - -1. Laita tarttumisen työkalu (työtilan yläosassa) päälle **self-snapping** ![](img/harjoitus_2/image13.png). - -2. Laita asteen mukaiset tukiviivat ja tarttuminen päälle digitoinnin lisätyökalut paneelista ![](img/harjoitus_2/snap_common_angles.png). Riittävä tarkkuus on tässä *"90, 180, 270, 360 astetta"*. - -3. Aloita piirtäminen piirtämällä ensimmäiset kaksi pistettä haluttuihin kohtiin. - -4. Kolmannen pisteen piirtämistä helpottamaan näkyville tulee apuviiva kohtisuoraan jo piirrettyyn viivaan. Piirrä tämän avulla kolmas piste haluttuun kohtaan. - -5. Hae seuraava kohtisuora apuviiva näkyviin liikuttamalla hiirtä kohti neljättä pistettä, mutta ÄLÄ paina hiiren nappulaa. Kun apuviiva on näkyvissä ja digitoinnin lisätyökalut paneelissa näkyy kulman arvona 90 astetta paina **CTRL+ A** lukitaksesi kulman arvo. ÄLÄ klikkaa neljättä pistettä kartalle. - -6. Vie hiiri suorakulmion aloituspisteeseen ja kun osoitin tarttuu pisteeseen, **klikkaa sitä hiirellä**.  - -7. Saadaksesi piirtämisen päätökseen, **klikkaa vielä hiiren oikealla** **näppäimellä.** Suorakulmio on valmis. - -![](img/harjoitus_2/Suorakulmaisen_polygonin_piirtaminen.gif) - -## Tehtävä: "Rakennus 35×40 m tontin rajan suuntaisesti, etäisyys rajaan 15 m" - -Piirretään uusi kohde tietylle etäisyydelle ja tietyssä kulmassa halutusta pisteestä tai linjasta. Esimerkiksi jos halutaan piirtää 15 metrin etäisyydelle tontin reunasta suorakulmainen rakennus, jonka kukin sivu on 30 metriä, sen voi tehdä digitoinnin lisätyökaluja hyödyntäen mm. seuraavasti: - -1. Lisää kurssihakemistostasi kiinteistörajat sisältävä vektoritaso **MML_kiinteistörekisterikartta_05-2023.gpkg** - -2. Valitse **Rakennukset** taso aktiiviseksi. - -3. Laita **editointi** päälle ![](img/harjoitus_2/toggle_editing.png) **Rakennukset**- tasolle,  **monikulmiokohteen piirtäminen päälle** ![](img/harjoitus_2/monikulmio_kohde.png) sekä **digitoinnin lisätyökalut** aktiivisiksi ![](img/harjoitus_2/image15.png){width="26" height="24"}. - -4. **Laita digitoinnin lisätyökalut** paneelista (vasen reuna) **rakentamistila** päälle ![](img/harjoitus_2/image19.png) (tai painamalla **C**). - -5. Aseta halutun kiinteistönraja nollakulmaksi valitsemalla rajalta kaksi pistettä. - -6. Valitse haluttu tukikulma 90 astetta painamalla **A** (kerran tai kahdesti, niin että fokus siirtyy digitoinnin lisätyökalut -paneelin kohtaan a(ngle)) ja syötetään luku 90. Painetaan **enter**. Käyttöön tulee apuviiva kohtisuorasti kiinteistönrajaan. Huom! Jos kulma-asteiden apuviivat ovat käytössä (![](img/harjoitus_2/snap_common_angles.png)-valikosta), saat automaattisesti apuviivoja piirtämisen avuksi eikä kulman arvoa tarvitse syöttää erikseen. - -7. Valitse haluttu etäisyys 15 metriä painamalla **D** (fokus siirtyy kohtaan d(istance)). Syötetään **luku 15**. Painetaan **enter**. Käyttöön tulee säde 15 m etäisyydelle kiinteistönrajaan piirretyn jälkimmäisen apupisteen mukaan. HUOM! Mitään ei ole vielä piirretty. - -8. Aloita piirtäminen poistamalla **rakentamistila** käytöstä ![](img/harjoitus_2/image19.png) (tai painamalla **C**). - -9. **Piirrä** ensimmäinen piste kohtisuoraa apuviivaa ja -sädettä hyödyntäen. - -10. Suora kulma pysyy valittuna, mutta etäisyys halutaan muuttaa 35 metriin (rakennuksen 1. seinän mitta). Paina **D**, syötä arvoksi 35 ja paina **enter**. Apusäde muuttuu 35 metriin. Piirrä rakennuksen seuraava nurkka. - -11. Vaihda etäisyydeksi 45 painamalla jälleen, syöttämällä arvo ja painamalla **enter**. Ympyrä kasvaa ja piirtäminen voidaan tehdä sen ja kohtisuoran apuviivan avulla. Etäisyys ja kulma pysyvät samana: piirrä kolmas nurkkapiste. - -12. Toista kohta 9. - -13. Paina lopuksi hiiren oikeaa näppäintä, jolloin alue sulkeutuu. Näin rakennus on valmis. - -![*Rakennuksen piirtäminen käyttämällä aluksi rakennustilaa apuna etäisyyden määrittämiseen alueen rajasta. Tämän jälkeen rakennuksen mitat annetaan painamalla D ja antamalla seinän mitta, jolloin piirtämisen avuksi tulee ympyrä annetun etäisyyden säteellä.*](img/harjoitus_2/Rakennus_tontin_rajan_suuntaisesti.gif) - -Tämän jälkeen digitoi aineistoon rakennuksia vähintään kolme kappaletta hyödyntäen digitoinnin lisätyökalujen ominaisuuksia. Koita myös kääntää rakennuksia 45 astetta hyödyntäen **Kierrä kohteita -työkalua** ![](img/harjoitus_2/image21.png). **CTRL+hiiren klikkaus** asettaa käännökselle kulmapisteen, jonka mukaan kääntö suoritetaan. - -Ota lopuksi tason editointi pois päältä ja tallenna tasoon tehdyt muutokset. - -## Case rakennusala tontille: polygonin kopiointi toiseksi itseään pienemmäksi - -1. Lisää **MML_kiinteistörekisterikartta_05-2023.gpkg** taso (jatkossa "lähtötaso"). - -2. Valitse polygoni/palsta, jonka haluat kopioida **valintatyökalulla** ![]()![](img/harjoitus_2/valintatyokalu.png). +::: hint-box +Integer, 32bit integer vai Integer 64 bit? Tässä tapauksessa valitsemme kentän tyypiksi Integerin, mutta mistä tietää jatkossa, kumman valitsee?\ +\ +Ensin käyttötarkoitus: mitä lukuja kenttään tallennetaan?\ +\ +16-bit signed integer voi sisältää kokonaisluvun väliltä -32 768 - 32 767\ +Unsigned: 0 - 65 535.\ +32-bit signed integer voi sisältää kokonaisluvun välillä −2 147 483 648 - 2 147 483 647\ +Unsigned: 0 - 4 294 967 295.\ +64-bit signed integer voi sisältää kokonaisluvun välillä −9 223 372 036 854 775 808 - 9 223 372 036 854 775 807\ +Unsigned: 0 - 18 446 744 073 709,55.\ +\ +QGIS:issä (versioissa 3.10+) integerit ovat oletuksena signed-tyyppisiä, ellei toisin mainita.\ +Toisakseen tulee harkittavaksi, mihin tuota tietoa tallennetaan: Geopackage, PostgreSQL vai joku muu? Mitä enemmän käytetään bittejä, sitä suuremmaksi kasvaa tiedostojen koot (myös PostgreSQL:ssä on tiedostoja tietokannan takana). Mitä suuremmat tiedostot, sitä hitaammin asiat sujuvat.\ +\ +Kolmanneksi pitäisi ottaa huomioon, että siirretäänkö kyseistä aineistoa johonkin toiseen järjestelmään / tiedostoformaattiin. Tuleeko tilanteita, joissa 64bit tallennettu tieto pitääkin viedä tiedostoon, joka ei salli noin suuria numeroita (kuten Shapefile).\ +::: -3. Kopioi polygoni leikepöydälle näppäinkomennolla **CTRL+C** tai (tai painamalla hiirellä valikosta **Kopioi kohteet** ![](img/harjoitus_2/kopioi_kohteet.png)). +## Aloita geometrioiden editointi -4. Jos haluat luoda kopion eri tasolle kuin millä alkuperäinen polygoni on, valitse kohdetaso tasopaneelista ja laita se **editointitilaan** ![](img/harjoitus_2/toggle_editing.png). +Aloitetaan aineiston muokkaaminen klikkaamalla **Tason muokkaus päälle/pois -painiketta** ![](img/harjoitus_1/image11.png). Huomaa, että **Digitoinnin työkalupalkin** työkalut aktivoituvat. -5. Liitä kopio tasolle painamalla **CTRL+V** tai valikosta **Liitä kohteet** ![](img/harjoitus_2/liita_kohteet.png). +![](img/harjoitus_1/image12.png) -6. Huomaa, että jos kohdetaso sijaitsee lähdetason alapuolella, liitetty polygoni jää alkuperäisen polygonin alle. Saat sen näkyviin joko vaihtamalla tasojen järjestystä (raahaamalla niitä tasot-paneelissa hiiren avulla) tai ottamalla päällä olevan tason pois näkyvistä tasopaneelissa. +Valitse työkaluksi **Lisää polygonikohde** ja aloita alueiden digitointi. Hiiren vasemmalla näppäimellä voit klikata kartalla kohteen kulmapisteet. Kun monikulmio on valmis, niin napauta hiiren oikeaa näppäintä, uusi monikulmio on luotu. Digitoi alla olevaa kuvan punaista aluetta vastaava monikulmio. -7. Jos uutta polygonia tarvitsee muokata (esim. pienentää), palaa kohdetasolle ja valitse polygoni. +![](img/harjoitus_1/image13.png) -8. Valitse Digitoinnin lisätyökalujen palkista **"Tee yhdensuuntaissiirtymä"** -työkalu (Offset curve) ![](img/harjoitus_2/offset_curve.png). +Kun editointi on valmis, QGISiin avautuu **Alueet - Kohteen attribuutit -ikkuna**. Laita **Alueen_nimi-kohtaan "Aluerajaus"**. Muihin kenttiin ei vielä tarvitse täyttää mitään. -9. Klikkaa kerran johonkin polygonin pisteeseen. Ruudun oikeaan yläkulmaan ilmestyy **Siirtymä**-asetusvalikko (Offset), johon voi syöttää halutun etäisyyden alkuperäisen polygonin viivasta (esim. -5 tekee tuo polygonin reunoja 5 metriä sisäänpäin aluperäisestä). Valikossa voi valita myös kulmien muodot ![](img/harjoitus_2/kulmien_muodot_asetus.png)-nappia painamalla. +![](img/harjoitus_1/image14.png) -![*Pienennetyn tai suurennetun polygonin kulmien muotoa voi muokata valikosta*.](img/harjoitus_2/Polygonin_kulma-asetukset.png) +Luodaan seuraavaksi uusi GeoPackage-taso, mutta kokonaan uuden tietokannan luomisen sijaan teemme aikaisemmin luotuun **Aluesuunnitelma-GeoPackageen** vain uuden tason. Anna taulun nimeksi **"Kulkureitit"** ja lisää siihen seuraavat kentät: -![](img/harjoitus_2/Polygonin_kopiointi_koon_muuttaminen.gif) +- Nimi: Reitin_nimi / Tyyppi: teksti -Ja sitten ei kun harjoittelemaan käyttöä! Esitellyt työkalut voivat tuntua hankalilta ensialkuun, mutta jo pienelläkin harjoituksella ja toistoilla käytännöt tulevat tutuksi ja työskentely jouhevoituu. +- Nimi: Pituus / Tyyppi: desimaalinumero -Olemme julkaisseet blogin myös liittyen [CAD-aineistojen käsittelyyn QGISissä](https://gispo.fi/blogi/cad-aineistot-ja-qgis/). +![](img/harjoitus_1/image15.png) -## Lisätehtävä: Lisää Rakennukset tasolle funktio, jolla pohjanalatieto (yhden kerroksen pinta-ala) päivittyy automaattisesti +Kun klikkaat **OK**, QGIS kysyy, haluatko korvata olemassa olevan GeoPackage-tiedoston (ja sen taulut) tällä tiedostolla vai lisätä tiedostoon/tietokantaan uuden tason. Valitse **Lisää uusi taso**, jolloin projektiin lisätään jälleen uusi taso. -1. Avaa Rakennukset-tason ominaisuudet. Mene kohtaan Attribuuttilomake +![](img/harjoitus_1/image16.png) -2. Valitse kentistä Pohjan_ala ja selaa kohtaan Oletusarvot. +Laita nyt vuorostaan tämän juuri luodun tason editointi päälle klikkaamalla **Tason muokkaus päälle/pois -kuvaketta** (kynäikoni). Koska haluamme että kulkureittien editointi alkaa aivan alueen reunasta, on kytkettävä **Tarttuminen (snapping)** päälle. Voit tehdä tämän klikkaamalla **Ota tarttuminen käyttöön -painiketta** ![](img/harjoitus_1/image17.png). Valitse ensimmäisestä alasvetovalikosta **Kaikki tasot** ja toisesta valikosta kuvan mukaisesti **Piste** ja **segmentti**. Aseta **tarttumisherkkyydeksi** 12 pikseliä (oletusherkkyys). -3. Avaa oikean reunan funktio-painikkeesta auki lausekkeen muokkaus -ikkuna. +![](img/harjoitus_1/image18.png) -4. Valitse Geometrian alta `$area`. Funktion voi myös itse kirjoittaa suoraan oletusarvot-kenttään. +Luodaan seuraavaksi kulkureitti, joka kulkee alueen läpi kuvan mukaisesti. Anna tälle kulkureitille nimeksi **"Raitiotie"**. Jätä pituus-kenttä vielä tyhjäksi. -5. Jos haluat vielä pyöristää arvoa niin, ettei kaikki desimaalit näy niin käytä round-funktiota. Jos esimerkiksi haluat pyöristää pohjanalan kahden desimaalin tarkkuudella, lauseke on `round($area,2)` +![](img/harjoitus_1/image19.png) -6. **Lopuksi muista laittaa täppä kohtaan "Käytä oletusarvoa päivityksessä"**, jolloin QGIS laskee uudelle polygonille automaattisesti pohjanalan! 🎉 +Päivitetään attribuuttitaulun kenttiin puuttuvat tiedot **Kentän arvojen laskin -työkalun** avulla. Avaa laskin klikkaamalla **Ominaisuustietojen työkalupalkista** **Avaa kentän arvojen laskin -painiketta** ![](img/harjoitus_1/image20.png) ![](img/harjoitus_1/image21.png) - ![](img/harjoitus_2/Attribuuttilomake.png)![](img/harjoitus_2/Lauseke.png){width="519"} +Klikkaa avautuvasta ikkunasta **Päivitä olemassa oleva kenttä** ja valitse alasvetovalikosta **Pituus-kenttä**. Kirjoita **Lauseke-kenttään** lauseke, joka laskee viivamaisen kohteen pituuden sekä pyöristää sen yhden desimaalin tarkkuudelle: -## Lopuksi +::: code-box +round(\$length, 1) +::: -Avaa **Kuvaustekniikka-paneeli** tai mene tason ominaisuuksien kautta **Kuvaustekniikka-välilehdelle** ja muokkaa editoitujen kohteiden värit vastaamaan taustakartan värejä **Värin valitsin -työkalua** hyödyntäen. +![](img/harjoitus_1/image22.png) -Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + S** tai päävalikosta **Projekti \> Tallenna**. +Laita lopuksi molempien tasojen tason muokkaus pois päältä klikkaamalla kynäkuvaketta. Tallenna kaikki muutokset tasoihin. Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + T** (englanninkielisessä QGISissä **CTRL + S**) tai päävalikosta **Projekti \> Tallenna**. ::: hint-box -Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti koulutustuki\@gispo.fi-sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. +**Psst! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelusta. Lähetä kysymyksesi tai kommenttisi osoitteeseen [koulutustuki\@gispo.fi](mailto:koulutustuki@gispo.fi){.email}!** ::: diff --git a/src/GS002/03_harjoitus_3.Rmd b/src/GS002/03_harjoitus_3.Rmd index b2b19b7e..8ecd0743 100644 --- a/src/GS002/03_harjoitus_3.Rmd +++ b/src/GS002/03_harjoitus_3.Rmd @@ -1,12 +1,12 @@ -# Harjoitus 3: Georeferointi +# Harjoitus 3: Edistyneet digitointiominaisuudet **Harjoituksen sisältö** -Harjoituksessa aktivoidaan Georefereroija-lisäosa ja harjoitellaan georeferointia vastinpisteiden avulla. +Harjoituksessa tehdään edistyneitä digitoinnin operaatioita QGISillä. **Harjoituksen tavoite** -Osallistuja oppii tuomaan kuvatiedoston QGIS-ohjelmaan ja georeferoimaan sen koordinaatistoon. +Harjoituksen jälkeen opiskelija osaa hyödyntää monipuolisemmin editoinnin ominaisuuksia. **Arvioitu kesto** @@ -14,139 +14,183 @@ Osallistuja oppii tuomaan kuvatiedoston QGIS-ohjelmaan ja georeferoimaan sen koo ## Valmistautuminen -Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 3**". +Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 2**". Lisää projektiin seuraavat aineistot: -QGISin lisäosat tarjoavat käyttöösi suuren valikoiman erilaisia taustakarttoja. Eri rajapinnoista saatavat taustakartat toimivat samaan tapaan kuin projektiin avatut rasteritasot: niiden läpinäkyvyyttä voi säätää, mutta ne eivät sisällä ominaisuustietoja. +- **Aluesuunnitelma.gpkg (Alueet- ja Kulkureitit-tasot)** -Helpoin tapa lisätä OpenStreetMap-kartta on etsiä se Selain-paneelista **XYZ Tiles** -rivin alta ja tuplaklikata sitä: +- **OpenStreetMap** -![](img/harjoitus_3/image22.png) +## Kohteisiin tarttuminen (snapping) ja rakennustila (construction mode) -Lisää taustakarttoja saat lataamalla Python-skriptin osoitteesta: +Tässä harjoitukksessa teemme rakennuksia rakennuspaikoille. Luo **Aluesuunnitelma-GeoPackageen** uusi taso rakennuksia varten seuraavasti: -Toimi siis seuraavasti: +Aloita valitsemalla työkalupalkista jälleen **Uusi GeoPackage-taso**. Tällä kertaa kuitenkin valitsemme **Tietokanta**-kenttään kohteeksi aiemmin luodun Aluesuunnitelma-Geopackagen, jolloin uusi taso tuleelisätyiksi siihen. Kun olet valinnut Aluesuunnitelma.gpkg:n tietokannaksi, anna tason nimeksi "Rakennukset" ja täytä tason tiedot kuten alla olevassa kuvassa: -1\. Kopioi ylläolevan osoitteen koko sisältö +![](img/harjoitus_2/image9.png) -2\. Avaa QGISin Python-konsoli (**Lisäosat → Python-konsoli**) +Tallennettaessa QGIS kysyy, korvataanko aiemmin luotu GeoPackage vai lisätäänkö uusi taso siihen. Valitse Lisää uusi taso. -3\. Avaa tekstieditori painamalla "Näytä editori" -nappulaa ![](img/harjoitus_3/image40.png). +![](img/harjoitus_2/image10.png) -4\. Liitä kopiomasi sisältö tekstieditoriin +Seuraavaksi laita **Tarttuminen** ![](img/harjoitus_2/image11.png), **Seuraaminen** ![](img/harjoitus_2/image12.png) **ja Self-snapping ![](img/harjoitus_2/image13.png)**päälle **Tarttumisen työkalut -paneelista**. Aseta muut tarttumisasetukset seuraavan kuvan mukaisiksi: -![](img/harjoitus_3/image23.png) +![](img/harjoitus_2/image14.png) -5\. Paina "Suorita skripti" -nappulaa ![](img/harjoitus_3/image24.png). +Valinnat järjestyksessä vasemmalta oikealle: -6\. Käynnistä QGIS uudelleen. +- Tarttuminen -Nyt käytössäsi pitäisi olla lisää taustakarttoja selainikkunan XYZ Tiles -kohdassa. +- Kaikki tasot (klikkaa kuvaketta ja voit valita asetuksen pudotusvalikosta) -## Lisää taustakarttoja: QuickMapServices-lisäosa +- Taitepiste (klikkaa kuvaketta ja voit valita asetuksen pudotusvalikosta) -Laajemman valikoiman erilaisia taustakarttoja saat käyttöösi lisäosalla nimeltä **QuickMapServices**. Asenna se yläpalkin Lisäosat-valikosta ja avaa sen jälkeen Verkko-valikosta **Search QMS**. Avautuvasta paneelista voit etsiä erilaisia taustakarttoja ja satelliittikuvia, suodattaa niitä sijaintisi perusteella, ja saada tarvittaessa lisätietoja (esim. käyttöoikeuksista) kartasta. Vihreä pallo kertoo, että kartta on saatavilla. +- 10 -Voit valita taustakartaksi jonkun selkeän kartan, josta saat helposti näkyville tien, rakennukset ja ympäröivän alueen, kuten satelliittikuvan tai OpenStreetMapin. Georeferoitava kohde on Tampereen keskustassa. Voit joko etsiä kohteen kartalta tai hyödyntää QGISin hakutoimintoa OSM-kartan kanssa. +- px (pikseliä) -![](img/harjoitus_3/image25.png) +- Ei käytössä -Lisää kenttään ensin merkki **\>** ja kirjoita tämän jälkeen osoite **Ratinansilta** ja tuplaklikkaa esiintulevasta listasta osoitetta. Kartan pitäisi zoomata suoraan valittuun tiekohteeseen. +- Ei käytössä -## Aineistojen valmistelu: Georeferoija lisäosan aktivointi +- Ei käytössä -Georefereroija-lisäosa voi vaatia aktivoinnin. Uusimmissa QGIS-versioissa (alkaen versiosta 3.28.) lisäosa pitäisi olla aktivoituna valmiiksi, mutta jos käytät vanhempaa versiota (3.22), niin QGIS vaatii sisäänrakennetun Georeferencer-lisäosan aktivoinnin georeferointia varten. Lisäosa aktivoidaan **Lisäosat-valikon** takaa löytyvän **Hallitse ja asenna lisäosia/Manage and Install Plugins** -toiminnon avulla. Tässä ohjeistuksessa oletetaan, että lisäosa on aktivoitu onnistuneesti. +- Ota seuraaminen käyttöön -![Kuva 1. Uudemmissa QGIS-versioissa Georeferoija löytyy tasot-valikosta](img/harjoitus_3/image26_uusi_versio.png) +- Self snapping (tarttuminen työn alla olevaan digitoitavaan kohteeseen) -![Kuva 2. Vanhemmissa versioissa se löytyy Rasterit-valikosta.](img/harjoitus_3/image26_vanha_versio.png) +## Rakentamistila -## Georeferoija-lisäosan toiminta +Jos piirtämisen apuna tarvitaan etäisyyttä tietystä pisteestä tai tiettyä kulmaa johonkin olemassa olevaan linjaan, rakentamistilan avulla saa näkyville apuviivoja piirtämisen tueksi. Rakentamistilan ollessa aktiivisena ei voi piirtää, mutta sen avulla voidaan hakea näkyviin tarvittavia apuviivoja esim. etäisyyden tai kulman suhteen. Rakentamistilaa voi käyttää ennen tai kesken piirtämisen. -Huomaa, että jos sinulla on PDF-tiedosto, jonka haluat georeferoida, se tulee muuttaa ensin kuvaformaattiin (esim. .JPEG tai .PNG). Tämä onnistuu useimmilla PDF-lukuohjelmilla tai netissä saatavilla olevilla muuntimilla (Googleen "PDF to PNG converter"). +Rakentamistila aktivoidaan laajennetun digitoinnin paneelista löytyvästä ![](img/harjoitus_2/image17.png)![]()-nappulasta. Sen saa päälle/pois päältä myös pikakomennolla **C**. -Kun avaat Georeferencer-lisäosan, se avaa erillisen ikkunan, jossa georeferointi toteutetaan. Georeferencer-ikkunaan voidaan avata georeferoitava rasterikuva **Avaa rasteri**... -painikkeesta (kuva 3). Painikkeesta avautuu ikkuna, jonka avulla georeferoitavan kuvan voi valita koneen tiedostojärjestelmästä. Tuettuina on useita kymmeniä eri rasteriformaatteja aina perinteisistä JPEG- ja PNG-formaateista tehokkaisiin JPEG2000- ja ECW-formaatteihin. +Huom! Rakentamistilassa ollessa ei piirretä mitään. Kun olet saanut rakentamistilassa toivotut apuviivat näkyville ja haluat aloittaa varsinaisen piirtämisen, rakentamistila tulee sulkea joko painamalla hiirellä ![](img/harjoitus_2/image19.png) tai **C**-näppäimellä. Apuviivat jäävät näkyviin ja voit piirtää niiden avulla pisteen haluamaasi paikkaan. -![Kuva 3. Georeferoitava rasteri avataan Georeferencer-ikkunaan Avaa rasteri -painikkeesta](img/harjoitus_3/image27.png) +## Rakennuksen piirto apuviivojen avulla -Valitse rasteriksi kurssihakemistosta löytyvä **Tampereen_kaupunki_ilmakuva_Keskusta-1999.png**. Kun haluttu kuva on valittu tiedostojärjestelmästä ja valinta vahvistettu Open-painikkeesta, avautuu käyttäjälle valittu rasteri näkyviin pienen latauksen jälkeen. +Lisätyökalujen avulla voi saada näkyville apuviivat ja tarttumisasetukset tiettyihin kulmiin, esimerkiksi 45 tai 90 asteen välein. Toiminnon saa päälle laajennetun digitoinnin paneelista (ikkunan vasemmassa laidassa) ![](img/harjoitus_2/snap_common_angles.png)-nappulasta. Oletuksena nollakulma on vaakatasossa piirtoalueen suhteen, mutta piirtämisen alettua kulma lasketaan viimeisen piirretyn viivan mukaan ja näkyviin tulee tukiviivoja haluttujen kulmien kohdalle. -Vanhemmissa versioissa tässä kohtaa avautuu käyttäjälle Coordinate Reference System Selector -ikkuna. Tähän ikkunaan syötetään tieto siitä koordinaattijärjestelmästä, johon georeferoitava rasterikuva halutaan saattaa. Tässä esimerkissä käytettäväksi koordinaattijärjestelmäksi valitaan **ETRS89-TM35FIN (EPSG:3067)**, mutta yhtä hyvin koordinaattijärjestelmäksi voidaan valita mikä tahansa QGIS:n tukema koordinaattijärjestelmä. +### Sitten vain harjoittelemaan.... -Tämän vaiheen jälkeen määritellään georeferoinnissa käytettävät asetukset. Tämä tapahtuu avaamalla **Asetukset**-valikosta **Muunnoksen asetukset** -ikkuna (kuva 4). Saman ikkunan saa avattua myös työkaluriviltä keltaisesta ratassymbolista. +Aseta **Rakennukset-tason** editointi päälle kynäkuvakkeesta. Kun valitset **Lisää polygonikohde -työkalun**, **Laajennettu digitointi -kuvake** aktivoituu ![](img/harjoitus_2/image15.png). Klikkaa kuvaketta niin saat **Laajennettu digitointi -hallintapaneeliin** QGISiin. -![Kuva 4. Georeferoinnin asetukset määritellään Asetukset-valikosta löytyvän Muunnoksen asetukset -painikkeen takaa](img/harjoitus_3/image28.png) +![](img/harjoitus_2/image16.png) -**Muunnoksen asetukset** -ikkunassa määritellään muunnoksessa käytettävät asetukset (kuva 5). Toteutettavan muunnoksen osalta (Kohta **Muunnosparametrit**) valittavissa on muunnoksen tyyppi, interpoloinnissa käytettävä menetelmä ja koordinaattijärjestelmä. Muunnoksessa syntyvän tiedoston osalta ikkunassa voidaan määritellä syntyvän tiedoston nimi, tallennussijainti sekä pakkausmenetelmä. +Laita vielä **Snap to common angles/tartu yleismpiin kulmiin --\> 90.0, 180.0, 270.0, 360.0** päälle![](img/harjoitus_2/snap_common_angles.png) -Tarkista, että muunnoksen tyyppi on **Lineaarinen**, menetelmä **Läheisin naapuri (nearest neighbour)** ja aseta koordinaattijärjestelmäksi **EPSG:3067**. +Aloita nyt **Rakennukset-tason** editointi. -Kohdassa "Tulostiedoston asetukset" voidaan myös valita pakkaustyyppi, luoda ns. ESRI World -tiedosto varsinaisen georeferoinnin toteuttamisen sijaan ja määrittää nolla-arvot läpinäkyviksi. Lisäksi valittavissa on kohta oman vapaavalintaisen spatiaalisen resoluution asettamiseksi muunnoksen yhteydessä luotavalle kuvalle. +1. Harjoittele ensin rakennuksien piirtämistä apuviivojen avulla alla olevan kuvan mukaisesti -Muunnoksesta on mahdollista saada ulos myös kartta ja raportti ("Raportit"-kohta). Näiden tallennuspaikat määritellään tarvittaessa. Varmista myös, että ikkunan alareunasta löytyvä "Lataa projektiin kun valmis" -täppä on aktiivisena. Näin saat suoraan valmiin georeferoidun rasterin auki QGISin karttaikkunaan georeferoinnin jälkeen. + ![](img/harjoitus_2/tarttumisen_apuviivat.gif) -![Kuva 5. Muunnoksen asetukset -ikkuna halutuilla asetuksilla (Transformation Settings)](img/harjoitus_3/image29.png) +2. Seuraavaksi harjoitellaan alueen reunaviivan suuntaisesti rakennuksen piirtämistä. Toimi seuraavasti: -## Panosta vastinpisteisiin +- Varmista, että laajennettu digitointi ![](img/harjoitus_2/image15.png){width="26" height="25"} on päällä. -Kun muunnoksen asetukset on onnistuneesti määritelty, paina asetusikkunasta "OK". Nyt voidaan siirtyä määrittelemään vastinpisteitä. Homma lähtee liikkeelle valitsemalla työkaluriviltä löytyvä "Lisää muunnospiste" -työkalu (kuva 6). Ko. painikkeen vierestä oikealta löytyvät tarvittaessa painikkeet jo määriteltyjen vastinpisteiden poistamiseen ja muokkaamiseen. "Lisää muunnospiste" -painikkeen painaminen aktivoi työkalun, jolla osoitetaan georeferoitavalta kuvalta piste. +- Piirrä piste kartalle haluamaasi kohtaan. Laajennetun digitoinnin valikossa aktivoituvat kohtisuoruustyökalu ![](img/harjoitus_2/image18.png) ja rinnakkainentyökalu ![](img/harjoitus_2/yhdensuuntaisuus_tyokalu.png). -![Kuva 6: Georeferointi aloitetaan lisäämällä rasterikuvalle oikaisupisteitä](img/harjoitus_3/image30.png) +- Valitse haluamasi työkalu (kohtisuoruus tai rinnakkainen): -Kun "Lisää muunnospiste" -työkalulla on osoitettu piste georeferoitavalta kuvalta, avautuu "Kirjoita karttakoordinaatit" (Enter Map Coordinates) -ikkuna (kuva 7). Ikkunaan voi halutessaan syöttää koordinaattitiedot käsin, mutta huomattavasti kätevämpi tapa on poimia ne QGIS-paikkatietosovelluksen pääikkunasta painamalla "Karttaikkunasta"-painiketta. + - -Usean näyttöruudun käsittävä setup helpottaa merkittävästi vastinpisteiden napsuttelua. Mikäli tällaista järjestelyä ei ole käytettävissä (esim. operoitaessa pienellä kannettavan ruudulla), voidaan elämää helpottaa täppäämällä "Piilota goereferoinnin ikkuna automaattisesti" -kohta. Tällöin Georeferencer sukeltaa automaattisesti piiloon Karttaikkunasta -painiketta painettaessa. + a) painamalla sen nappia hiirellä, tai -![Kuva 7: Oikaisupisteen tiedot annetaan Kirjoita karttakoordinaatit -ikkunassa](img/harjoitus_3/image31.png) + - -Kun pisteelle on koordinaatit (joko QGIS-pääikkunasta osoittaen tai käsin syöttämällä), nähdään kentissä X / Itä ja Y / Pohjoinen numeroarvoja (kuva 8). Tässä esimerkissä käytetään ETRS89-TM35FIN-koordinaattijärjestelmää (EPSG:3067), jonka koordinaatit ovat kuvassa. Vaihtoehtoisesti voit valita alasvetovalikosta toisen käytettävän koordinaattijärjestelmän (valittava siis samaksi kuin pääkanvaasi näkymässä) + b) paina **P** yhdestä kolmeen kertaa aktivoidaksesi työkaluja järjestyksessä: kohtisuoruus -\> yhdensuuntaisuus -\> vapaapiirto. -Onnistunut ja laadukas georeferointi vaatii useiden vastinpisteiden määrittelyn. Kuten aiemmin todettiin, vastinpisteiksi kannattaa valita esimerkiksi rakennusten kulmia, kiinteistörajoja ja muita helposti ja yksiselitteisesti tukiaineistosta tulkittavia kohteita. Vastinpisteet kannattaa lisäksi pyrkiä osoittamaan huolellisesti ja tarkasti sekä eri puolille georeferoitavaa kuvaa. +- Kun jompi kumpi työkalu on valittuna, klikkaa viivaa, jonka suhteen haluat yhdensuuntaisuutta tai kohtisuoruutta. Huom! tämä klikkaus ei piirrä pistettä, vaan valitsee työkalulle peilauskohteen. Näkyviin tulee valitusta työkalusta riippuen joko yhdensuuntainen tai kohtisuora apuviiva. -Tarkkuus korostuu etenkin silloin, kun vastinpisteitä osoitetaan ainoastaan muutamia. Mitä enemmän vastinpisteitä voidaan osoittaa, sen pienempi on yksittäisestä pisteestä aiheutuva vaikutus muunnokseen. +- Klikkaa toinen piste kartalle apuviivan avulla haluamaasi kohtaan. Jos haluat, voit määrittää etäisyyden painamalla **D** (fokus etäisyyden syöttökenttään), syöttämällä etäisyyden metreinä ja painamalla **enter**. -Kun vastinpisteen tiedot ovat Kirjoita karttakoordinaatit -ikkunassa ja oikea koordinaattijärjestelmä valittu, voidaan vastinpiste tallentaa painamalla OK-painiketta. Tällöin vastinpiste tallentuu muunnospistetauluun (GCP-taulu) ja ikkuna sulkeutuu. Uuden pisteet saa lisättyä Lisää piste -painikkeesta. +- Jatka piirtämistä haluamallasi tavalla. Kohtisuoruutta ja yhdensuuntaisuutta voi käyttää piirtämisen aikana toistamalla askelia -![Kuva 8: Oikaisupisteen tiedot syötetty](img/harjoitus_3/image32.png) +## Suorakulmaisen polygonin piirtäminen -![Kuva 9: Jos haluat poistaa jonkun vastinpisteen, voit sen tehdä "Poista muunnospiste" -työkalulla. Aktivoi työkalu ja klikkaa sillä georeferointi-ikkunassa näkyvää pientä punaista pistettä (vastinpiste).](img/harjoitus_3/image33.png) +1. Laita tarttumisen työkalu (työtilan yläosassa) päälle **self-snapping** ![](img/harjoitus_2/image13.png). -![Kuva 10: Poistaminen voidaan tehdä myös muunnospistetaulussa klikkaamalla haluttua riviä hiiren oikealla ja valitsemalla "Poista".](img/harjoitus_3/image34.png) +2. Laita asteen mukaiset tukiviivat ja tarttuminen päälle laajennetun digitoinnin paneelista ![](img/harjoitus_2/snap_common_angles.png). Riittävä tarkkuus on tässä *"90, 180, 270, 360 astetta"*. -## Vastinpisteiden tarkastelu ja varsinainen georeferointi +3. Aloita piirtäminen piirtämällä ensimmäiset kaksi pistettä haluttuihin kohtiin. -Kun tarvittava määrä vastinpisteitä on syötetty, voidaan niitä tarkastella muunnospistetaulun (GCP-taulu) avulla. Mikäli muunnospistetaulu ei näy automaattisesti Georeferointi-ikkunassa ns. paneelina, voidaan se avata Näytä-valikosta löytyvän Paneelit-valikon alta (kuva 11). +4. Kolmannen pisteen piirtämistä helpottamaan näkyville tulee apuviiva kohtisuoraan jo piirrettyyn viivaan. Piirrä tämän avulla kolmas piste haluttuun kohtaan. -![Kuva 11: Syötettyjä oikaisupisteitä ja niiden vastinpisteitä voi tarkastella CGP-taulusta](img/harjoitus_3/image35.png) +5. Hae seuraava kohtisuora apuviiva näkyviin liikuttamalla hiirtä kohti neljättä pistettä, mutta ÄLÄ paina hiiren nappulaa. Kun apuviiva on näkyvissä ja laajennetun digitoinnin paneelissa näkyy kulman arvona 90 astetta paina **CTRL+ A** lukitaksesi kulman arvo. ÄLÄ klikkaa neljättä pistettä kartalle. -Muunnospistetaulussa on nähtävillä kaikki osoitetut vastinpisteet (kuva 10). Tässä esimerkissä on määritelty kymmenen vastinpistettä. Jokaisella vastinpisteelle esitetään taulussa sijainti georeferoitavalla kuvalla (Lähtö X ja Lähtö Y) ja sijainti tukiaineistossa (Kohde X ja Kohde Y). +6. Vie hiiri suorakulmion aloituspisteeseen ja kun osoitin tarttuu pisteeseen, **klikkaa sitä hiirellä**.  -Näiden tietojen lisäksi jokaiselle pisteelle lasketaan virhe X- ja Y-suunnassa. X- ja Y-suuntaisten virhelukujen lisäksi jokaiselle pisteelle on laskettu residuaali, joka kuvaa ko. pisteen kokonaisvirhettä. Ideaalitilanteessa residuaaliarvo olisi mahdollisimman lähellä nollaa. +7. Saadaksesi piirtämisen päätökseen, **klikkaa vielä hiiren oikealla** **näppäimellä.** Suorakulmio on valmis. -Huomaa, että virhearvot esitetään pikseleinä. Mikäli jokin vastinpiste eroaa virhearvojen (Residuals/Residuaalit) osalta muista, kannattaa se poistaa ja määritellä uudelleen. Tässä esimerkissä olevat pisteet näyttäisivät olevan hyvin linjassa toistensa kanssa eikä selkeitä poikkeamia esiinny. Voidaan siis edetä hyvillä mielin viimeiseen vaiheeseen, jossa itse georeferointi toteutetaan. +![](img/harjoitus_2/Suorakulmaisen_polygonin_piirtaminen.gif) -![Kuva 12: GCP-taulussa nähdään kaikki syötetyt vastinpisteet.](img/harjoitus_3/image36.png) +## Tehtävä: "Rakennus 35×40 m tontin rajan suuntaisesti, etäisyys rajaan 15 m" -Kun tarvittava määrä vastinpisteitä on määritelty ja ne on todettu hyviksi muunnospistetaulua tarkastelemalla, voidaan käynnistää varsinainen georeferointi. Tämä tapahtuu Georeferencer-ikkunan **Käynnistä georeferoija** -painikkeesta (kuva 13). +Piirretään uusi kohde tietylle etäisyydelle ja tietyssä kulmassa halutusta pisteestä tai linjasta. Esimerkiksi jos halutaan piirtää 15 metrin etäisyydelle tontin reunasta suorakulmainen rakennus, jonka kukin sivu on 30 metriä, sen voi tehdä laajennetun digitoinnin työkaluja hyödyntäen mm. seuraavasti: -![Kuva 13: Georeferointi käynnistetään Start Georeferencing -painikkeesta.](img/harjoitus_3/image37.png) +1. Valitse **Rakennukset** taso aktiiviseksi. -Mikäli Muunnoksen asetukset (Transformation Settings) -ikkunassa on laitettu täppä kohtaan "Lataa projektiin kun valmis", avautuu georeferoitu kuva automaattisesti QGISiin georeferoinnin jälkeen. Mikäli täppää ei ole laitettu, voi kuvan lisätä myös manuaalisesti Open Data Source Manager -toiminnon kautta. +2. Laita **editointi** päälle ![](img/harjoitus_2/toggle_editing.png){width="26" height="24"} **Rakennukset**- tasolle,  **monikulmiokohteen piirtäminen päälle** ![](img/harjoitus_2/monikulmio_kohde.png) sekä l**aajennetun digitoinnin työkalut** aktiivisiksi ![](img/harjoitus_2/image15.png){width="26" height="24"}. -## Lisätehtävä: Lataa QGIS-lisäosa MapSwipe Tool +3. **Laita laajennetun digitoinnin** paneelista (vasen reuna) **rakentamistila** päälle ![](img/harjoitus_2/image19.png) (tai painamalla **C**). -Kätevä työkalu kahden tason vertaamiseen on QGISin lisäosa MapSwipe Tool. Tällä lisäosalla voit verrata kahden tason näkymää olipa tason formaatti mikä tahansa. +4. Aseta halutun kiinteistönraja nollakulmaksi valitsemalla rajalta kaksi pistettä. -Asentamisen jälkeen ylätyökalu-palkkiin pitäisi ilmestyä seuraava ikoni ![](img/harjoitus_3/image39.png). +5. Valitse haluttu tukikulma 90 astetta painamalla **A** (kerran tai kahdesti, niin että fokus siirtyy laajennetun digitointipaneelin kohtaan a(ngle)) ja syötetään luku 90. Painetaan **enter**. Käyttöön tulee apuviiva kohtisuorasti kiinteistönrajaan. Huom! Jos kulma-asteiden apuviivat ovat käytössä (![](img/harjoitus_2/snap_common_angles.png)-valikosta), saat automaattisesti apuviivoja piirtämisen avuksi eikä kulman arvoa tarvitse syöttää erikseen. -Klikkaa ikonia ja sen jälkeen voit joko vaakatasossa tai pystytasossa "swaippailla". Suunta määräytyy sen mukaan mikä on hiiren suunta. +6. Valitse haluttu etäisyys 15 metriä painamalla **D** (fokus siirtyy kohtaan d(istance)). Syötetään **luku 15**. Painetaan **enter**. Käyttöön tulee säde 15 m etäisyydelle kiinteistönrajaan piirretyn jälkimmäisen apupisteen mukaan. HUOM! Mitään ei ole vielä piirretty. -![](img/harjoitus_3/image38.gif) +7. Aloita piirtäminen poistamalla **rakentamistila** käytöstä ![](img/harjoitus_2/image19.png) (tai painamalla **C**). -Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + S** tai päävalikosta **Projekti \> Tallenna**. +8. **Piirrä** ensimmäinen piste kohtisuoraa apuviivaa ja -sädettä hyödyntäen. + +9. Suora kulma pysyy valittuna, mutta etäisyys halutaan muuttaa 35 metriin (rakennuksen 1. seinän mitta). Paina **D**, syötä arvoksi 35 ja paina **enter**. Apusäde muuttuu 35 metriin. Piirrä rakennuksen seuraava nurkka. + +10. Vaihda etäisyydeksi 45 painamalla jälleen, syöttämällä arvo ja painamalla **enter**. Ympyrä kasvaa ja piirtäminen voidaan tehdä sen ja kohtisuoran apuviivan avulla. Etäisyys ja kulma pysyvät samana: piirrä kolmas nurkkapiste. + +11. Toista kohta 9. + +12. Paina lopuksi hiiren oikeaa näppäintä, jolloin alue sulkeutuu. Näin rakennus on valmis. + +![*Rakennuksen piirtäminen käyttämällä aluksi rakennustilaa apuna etäisyyden määrittämiseen alueen rajasta. Tämän jälkeen rakennuksen mitat annetaan painamalla D ja antamalla seinän mitta, jolloin piirtämisen avuksi tulee ympyrä annetun etäisyyden säteellä.*](img/harjoitus_2/Rakennus_tontin_rajan_suuntaisesti.gif) + +Tämän jälkeen digitoi aineistoon rakennuksia vähintään kolme kappaletta hyödyntäen laajennetun digitoinnin ominaisuuksia. Koita myös kääntää rakennuksia 45 astetta hyödyntäen **Kierrä kohteita -työkalua** ![](img/harjoitus_2/image21.png). **CTRL+hiiren klikkaus** asettaa käännökselle kulmapisteen, jonka mukaan kääntö suoritetaan. + +Ota lopuksi tason editointi pois päältä ja tallenna tasoon tehdyt muutokset. + + + +Ja sitten ei kun harjoittelemaan käyttöä! Esitellyt työkalut voivat tuntua hankalilta ensialkuun, mutta jo pienelläkin harjoituksella ja toistoilla käytännöt tulevat tutuksi ja työskentely jouhevoituu. + +Olemme julkaisseet blogin myös liittyen [CAD-aineistojen käsittelyyn QGISissä](https://gispo.fi/blogi/cad-aineistot-ja-qgis/). -::: hint-box -Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti koulutustuki\@gispo.fi-sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. -::: +## Lisätehtävä: Lisää Rakennukset tasolle funktio, jolla pinta-ala tieto päivittyy automaattisesti +1. Avaa Rakennukset-tason ominaisuudet. Mene kohtaan Attribuuttilomake +2. Valitse kentistä Pinta-ala ja selaa kohtaan Oletusarvot. + +3. Avaa oikean reunan funktio-painikkeesta auki lausekkeen muokkaus -ikkuna. + +4. Valitse Geometrian alta `$area`. Funktion voi myös itse kirjoittaa suoraan oletusarvot -kenttään. + +5. Jos haluat vielä pyöristää arvoa niin, ettei kaikki desimaalit näy niin käytä round-funktiota. Jos esimerkiksi haluat pyöristää pinta-alan kahden desimaalin tarkkuudella lauseke on `round($area,2)` + +6. **Lopuksi muista laittaa täppä tuohon "Käytä oletusarvoa päivityksessä" kohtaan**, niin QGIS laskee uudelle polygonille automaattisesti pinta-alan! 🎉 + + ![](img/harjoitus_2/Attribuuttilomake.png)![](img/harjoitus_2/Lauseke.png){width="519"} + +## Lopuksi + +Avaa **Kuvaustekniikka-paneeli** tai mene tason ominaisuuksien kautta **Kuvaustekniikka-välilehdelle** ja muokkaa editoitujen kohteiden värit vastaamaan taustakartan värejä **Värin valitsin -työkalua** hyödyntäen. + +Voit vielä hyödyntää alueen reunaa käyttäen **Seuraaminen-ominaisuutta**: + +  + +Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + T** (englanninkielisessä QGISissä **CTRL + S**) tai päävalikosta **Projekti \> Tallenna**. + +::: hint-box +**Psst! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelusta. Lähetä kysymyksesi tai kommenttisi osoitteeseen [koulutustuki\@gispo.fi](mailto:koulutustuki@gispo.fi){.email}!** +::: diff --git a/src/GS002/04_harjoitus_4.Rmd b/src/GS002/04_harjoitus_4.Rmd index 2cb7cd3d..c08f2d85 100644 --- a/src/GS002/04_harjoitus_4.Rmd +++ b/src/GS002/04_harjoitus_4.Rmd @@ -1,105 +1,62 @@ -# Harjoitus 4: Topologia ja geometria +# Harjoitus 4: DWG/DXF-tiedoston tuonti **Harjoituksen sisältö** -Harjoituksessa opetellaan käyttämään QGISia topologian ja geometrian tarkistukseen. +Tuodaan QGISiin DWG-tiedosto. **Harjoituksen tavoite** -Harjoituksen jälkeen osallistuja osaa tarkastaa aineistonsa geometrioita ja tehdä niihin manuaalisesti ja automaattisesti tarvittavia korjauksia. +Kurssilainen ymmärtää, miten CAD-aineistoa tuodaan QGISiin sekä minkälaisessa muodossa se tuodaan sekä miten sitä voi käsitellä. **Arvioitu kesto** -30 minuuttia. +20 minuuttia. ## Valmistautuminen -Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "**QGIS-harjoitus 4**". Lisää projektiin seuraavat aineistot: +Avaa aiemmin tehty projekti Tampereen Pyynikin alueelta. Voit pitää taustalla avaamiasi karttoja ja ensimmäisessä harjoituksessa georeferoidut vanhat kartat. Ne voi laittaa helposti pois näkyvistä painamalla tason nimen vierestä täpän pois päätlä. -- **Rakennukset_alueina_GK25.gpkg** -## Virheellisen aineiston tuonti QGISiin +## DXF-tason tuonti -**Rakennukset_alueina_GK25-tiedosto** on Helsinki Region Infoshare -sivustolta ladattu avoin aineisto, joka sisältää Vantaan kaupungin rakennukset. Aineiston on kerrottu päivittyvän viikoittain ja sen lähteeksi on merkitty Vantaan kaupungin kiinteistöt ja asuminen, mutta pienellä tarkastelulla huomaamme, että kyseinen aineisto ei ole täysin virheetöntä. +QGISiin voi tuoda suoraan DXF- sekä DWG-tiedostoja. QGIS lukee usein DXF-tiedostoja hieman paremmin kuin DWG-tiedostoja, joten jos tuot aineistoa suoraan jostain CAD-ohjelmistosta, kannattaa aineisto ottaa sieltä ulos suoraan oikeassa muodossa. -![](img/harjoitus_4/image1.png) - -Aineisto näyttää silmämääräisesti olevan kunnossa, mutta entä sen koneluettavuus? Jos aineisto ei ole kaikkien teknisten määritysten mukainen, voi olla että sillä ei pysty esimerkiksi suorittamaan kaikkia spatiaalisia operaatioita tai sen siirrossa formaatista toiseen tulee ongelmia. Tarkastetaan siis onko tässä aineistossa joitain mahdollisia ongelmia. Tähän tarkoitukseen löytyy QGISistä useita erilaisia työkaluja. - -## Tarkista kelpoisuus (Check validity) - -Aloitetaan aineiston koneluettavuuden (= aineiston laadun) tarkistus "kevyimmällä" tarkistustyökalulla. Valitse QGISin päävalikosta **Vektori \> Geometria-työkalut \> Tarkista kelpoisuus...**, jolloin QGISiin avautuu **Tarkista kelpoisuus -ikkuna**. - -![](img/harjoitus_4/image2.png) - -Kyseinen algoritmi tekee kelpoisuustarkistuksen tason geometrioille. Geometriat luokitellaan kolmeen ryhmään (**Kelvollinen tulos, Virheellinen tulos** ja **Virhetuloste**) ja kullekin näistä luodaan uusi taso. Oletusarvoisesti algoritmi käyttää tiukkaa OGC-määritystä polygonin validoinnissa, mutta me emme halua ottaa tiukinta mahdollista määritystä huomioon, joten valitse  **Älä huomioi renkaan itsensä leikkausta**. Koska rakennus voi olla geometrialtaan täysin validi vaikka siinä olisi reikä, jätetään kyseiset virheilmoitukset huomiotta. Paina sitten **Suorita**. - -![](img/harjoitus_4/image3.png) - -QGIS tuottaa oletusasetuksilla kolme väliaikaista tasoa, jotka se lisää projektiin. Saat vielä kohteiden määrän näkyviin klikkaamalla tasoa hiiren oikealla ja valitsemalla **Näytä kohteiden lukumäärä**. Kuten alla olevasta kuvasta näkyy, aineisto sisältää melkoisen määrän virheellisiä geometrioita. - -![](img/harjoitus_4/image4.png) - -Avaa **Virheellinen tulos -tason** attribuuttitaulu ja tarkastele **\_error-saraketta**. Sarake sisältää selkokielisen kuvauksen virheen luonteesta. Suurin osa virheilmoituksista on **Self-intersection-virheitä**, mikä tarkoittaa että polygoni leikkaa itsensä. Tämä analyysi tuo siis **tiedon virheellisistä kohteista, mutta ei auta niiden korjaamisessa**. - -## Topologian tarkastaja (Topology checker) - -Seuraava vaihtoehto aineiston laatutarkistukseen on **Topologian tarkastaja -työkalu**. Se on QGISin ns. **ytimeen kuuluva lisäosa**, eli se tulee QGISin mukana, mutta sitä ei ole aina aktivoitu. Mene ylävalikosta **Lisäosat \> Hallitse ja asenna lisäosia...** ja kirjoita hakukenttään **"Topologian tarkastaja"**. Klikkaa työkalu aktiiviseksi, jolloin se ilmestyy ylävalikon **Vektori-valikkoon**. - -![](img/harjoitus_4/image5.png) - -**Topologian tarkistin -paneeli** aukeaa seuraavasta **Topologian tarkastaja -kuvakkeesta** ![](img/harjoitus_4/image6.png). Aineiston topologisen eheyden voi tarkistaa tästä paneelista. - -![](img/harjoitus_4/image7.png) - -Valitse ensimmäiseksi **Topologian tarkastaja -paneelista Konfiguroi** ![](img/harjoitus_4/image8.png), jolloin QGISiin aukeaa uusi **Topologiasääntöjen asetukset -ikkuna**. Tässä ikkunassa voidaan määritellä ne säännöt, joiden mukaan QGIS käsittelee aineiston geometrioita. Säännöt voivat koskea vain yhtä tasoa tai ne voivat olla kahden tason välisiä sääntöjä. Sääntöjä voi olla esimerkiksi etteivät kaksi tasoa saa olla päällekkäin. Lisää aineistoon kolme sääntöä kuvan mukaisesti ja paina **OK**. - -![](img/harjoitus_4/image9.png) - -Klikkaa sitten **Topologian tarkastaja -paneelissa Tarkasta kaikki -kuvaketta** ![](img/harjoitus_4/image10.png), jolloin QGIS ajaa kaikki äsken listatut säännöt. Minkälaisia tuloksia saat? Tarkastele tuloksia paneelin valikosta. - -## Geometrian tarkistaja (Geometry checker) - -Kolmas ja järein vaihtoehto geometrioiden tarkistukseen on **Geometrian tarkistaja -työkalu**. Tämäkin työkalu pitää käydä aktivoimassa edellisen tapaan lisäosien valikoimasta. Työkalu löytyy ylävalikon **Vektori-valikosta**. - -![](img/harjoitus_4/image11.png) - -Kuten heti huomaat kyseisen työkalun valikosta, **Geometrian tarkistaja -työkalu** antaa ylivoimaisesti laajimman valikoiman validoinnin toiminnallisuuksista. Tehdään kuitenkin perustason tarkastus aineistolle ja etsitään ainoastaan duplikaatteja. Valitse siis kuvan mukaiset asetukset aineiston validoinnissa ja valitse viimeiseksi vaihtoehdoksi (vieritä ikkunaa alaspäin) **Muokkaa syötetasoja**. Paina sitten **Suorita**. - -![](img/harjoitus_4/image12.png) +::: hint-box +QGIS lukee DWG- sekä DXF-aineistoja ja niitä saa suoraan tuotua QGISiin. Aineistosta tulee tietää käytetty koordinaattijärjestelmä, jotta muunnos tapahtuu oikein. Aineiston voi myös muuntaa toisella ohjelmalla suoraan GeoPackageksi tai Shapefileksi, jolloin ne toimivat QGISin kanssa huomattavasti sujuvammin. +QGIS tukee natiivisti vain vanhempaa MicroStation DGN v7 formaattia eikä uudempia pysty avata QGISissa. Nämä aineistot pitää joko tallentaa eri formaattiin tai muuntaa jälkikäteen vanhemmaksi versioksi, jotta ne saa avattua QGISissa. -Työkalu ajaa algoritmia hetken, mutta palauttaa sen jälkeen virheilmoitukset havaitsemistaan virheellisistä kohteista. Voit tarkastella yksittäistä virhettä klikkaamalla riviä; kartta zoomautuu oikeaan sijaintiin ja virheellinen kohde korostuu. Virheitä voi korjata yksitellen, mutta myös useamman virheen voi valita ja korjata isomman osion kerralla. Ennen varsinaista virheiden korjausta voit määrittää virheiden ratkaisumenetelmät valitsemalla **Aseta virheen ratkaisut**. Aseta **Duplikaattisolmu-kohtaan** ratkaisuksi **Poista duplikaattsolmu**. +::: -![](img/harjoitus_4/image13.png) +Aineistotuonnille on oma työkalunsa, avaa **Projekti -> Tuo/Vie -> Tuo tasoja DWG/DXF-tiedostoista...** +![](img/harjoitus_5/image1.png) -Korjaa virheet valitsemalla **Korjaa valitut virheet oletusratkaisulla**, jolloin QGIS poistaa duplikaattigeometriat, kuten määrittelimme äsken. +QGIS avaa uuden ikkunan, jossa pääset määrittämään minkä aineiston haluat tuoda ja mihin se tallennetaan. Aineistosta pitää myös tietää, missä koordinaattijärjestlemässä se on luotu, jotta tuonti ja aineiston muunnos GeoPackageen toimii oikein. +Etsi kurssihakemistosta harjoitus 4:n kansiosta tiedosto 6820_24484ak.dwg. Aineisto on samalta Tampereen Pyynikin alueelta, jolta georeferoitiin vanhat kartat. Kun määrität lähdetiedoston, samaan kansioon tehdään samanniminen geopackage, johon muunnettu aineisto tuodaan. +Määritä vielä aineiston koordinaattijärjestelmäksi ETRS-GK24 (EPSG 3878). -![](img/harjoitus_4/image14.png) +![](img/harjoitus_5/image2.png) -Voit lukea lisää työkalusta QGISin dokumentaatiosta:  +Paina Kohdepaketti-kohdasta lopuksi **Lataa tasot**, jolloin DWG-tiedostosta ladataan kaikki tasot näkyviin. - +![](img/harjoitus_5/image3.png) -::: hint-box -Miksi kaikki menetelmät tuottivat niin erilaisia tuloksia ja miksi vaihtoehtoja tarkastukseen on niin monta? Entä mikä olisi omalle aineistollesi paras mahdollinen tapa tarkistukseen? -::: +Tasot järjestetään automaattisesti uuteen ryhmään ja nimetään samalla tavalla kuin alkuperäisessä tiedostossa. Kun piirros ja tasot ovat latutuneet, voit painaa ikkunan alareunasta **OK** ja katsoa miltä tuotu aineisto näyttää QGISin karttaikkunassa. -## Geometrian ja topologian validointi tasoa muokattaessa +## DWG-aineisto -Voit välttää virheellisten geometrioiden muodostumista jo aineistoa digitoidessa ja editoidessa. Avaa muokattavan tason **Ominaisuudet**-ikkuna ja mene **Digitointi**-välilehdelle. Ruksi aktiivisiksi haluamasi korjaukset. +Tutki miltä tuotu aineisto näyttää QGISissa. Aineisto koostuu useasta eri ryhmästä, joissa on eri tasoja. Ryhmiin on järjestelty viivoja, pisteitä, alueita sekä tekstejä. Pystyt helpoiten tutkimaan rakennetta tasojen nimien avulla ja sillä, että laitat tason pois näkyvistä niin näet missä kyseinen taso sijaitsee ja mitä se sisältää. -![](img/harjoitus_4/image15.png) -Nimestään huolimatta tämä toiminto ei tee korjauksia automaattisesti, mutta huomauttaa virheellisistä geometrioista. +![](img/harjoitus_5/image4.png) +## Kohteiden kopioiminen toiselle tasolle -![](img/harjoitus_4/image16.png) +Kopioidaan muutama kohde aiemmin tehdylle Alueet-tasolle. Valitse esimerkiksi ryhmä AK_MuuAsemakaavaViiva_alueenosan_raja. Ryhmässä on kaksi tasoa: lines ja polylines. Voit valita jonkun kohteen, jonka haluat kopioida itse tehdylle tasollesi. Tuodut CAD-piirrokset koostuvat usein useammasta eri pätkästä, ota valintatyökalu käyttöön ja voit valita useamman kohteen joko piirtämällä kohteen ympärille neliön tai valitsemalla useamman kohteen pitäen Ctrl-näppäintä pohjassa. Kopioi kohteet painamalla **Ctrl+C** tai yläpalkista **Muokkaa -> Kopioi kohteet**. -Editoidessa voit hyödyntää myös **Tarttumisen työkalut** -palkin toimintoa päällekkäisten kohteiden digitoinnin välttämiseen. +Tarkista että taso, jolle siirrät kohteita on editointitilassa. Valitse kohdetaso tasovalikosta, jotta saat sen aktiiviseksi. Voit liittää kohteet uudelle tasolle joko painamalla **Ctrl+V** tai yläpalkista **Muokkaa-> Liitä kohteet**. Tallenna vielä tason muutokset, jotta kohteet tallentuvat uudelle tasolle. Kopioiminen ja liittäminen siirtää kuitenkin vain geometriat eikä attribuutteja, ellei uudella tasolla ole samoja attribuuttikenttiä kuin alkuperäisessä tasossa. -![](img/harjoitus_4/image17.png) +![](img/harjoitus_5/image5.png) -Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + S** tai päävalikosta **Projekti \> Tallenna**. ::: hint-box -Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti koulutustuki\@gispo.fi-sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. +**Psst! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelusta. Lähetä kysymyksesi tai kommenttisi osoitteeseen [koulutustuki\@gispo.fi](mailto:koulutustuki@gispo.fi){.email}!** ::: diff --git a/src/GS002/05_harjoitus_5.Rmd b/src/GS002/05_harjoitus_5.Rmd index b6e3da7f..f9ee18d2 100644 --- a/src/GS002/05_harjoitus_5.Rmd +++ b/src/GS002/05_harjoitus_5.Rmd @@ -1,71 +1,105 @@ -# Harjoitus 5: Geokoodaus +# Harjoitus 5: Topologia ja geometria **Harjoituksen sisältö** -Tutustutaan erilaisiin geokoodauksen mahdollistaviin toimintoihin ja lisäosiin. +Harjoituksessa opetellaan käyttämään QGISia topologian ja geometrian tarkistukseen. **Harjoituksen tavoite** -Osallistuja ymmärtää mihin geokoodaus perustuu ja osaa valita omaan käyttöönsä tarkoituksenmukaisen välineen. +Harjoituksen jälkeen opiskelija osaa tarkastaa aineistonsa geometrioita ja tehdä niihin manuaalisesti ja automaattisesti tarvittavia korjauksia. **Arvioitu kesto** -20 minuuttia. +30 minuuttia. ## Valmistautuminen -Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä "QGIS-harjoitus 5". +Avaa uusi QGIS-projekti (**Projekti \> Uusi**) ja tallenna se nimellä \"**QGIS-harjoitus 4**\". Lisää projektiin seuraavat aineistot: -Avaa projektiisi jokin taustakartta, esimerkiksi OpenStreetMap. Löydät sen **Selain**-ikkunan alareunasta XYZ Tiles -valikosta. +- **Rakennukset_alueina_GK25.shp** -## GeoCoding -lisäosa +## Virheellisen aineiston tuonti QGISiin -Avaa **Lisäosat > Hallitse ja asenna lisäosia** ja etsi lisäosa "GeoCoding". Tutustu sen esittelytekstiin: lisäosa voi hyödyntää sekä Googlen että OpenStreetMapin osoitetietoja ja niiden omia hakupalveluita. Asenna lisäosa. +**Rakennukset_alueina_GK25-tiedosto** on Helsinki Region Infoshare -sivustolta ladattu avoin aineisto, joka sisältää Vantaan kaupungin rakennukset. Aineiston on kerrottu päivittyvän viikoittain ja sen lähteeksi on merkitty Vantaan kaupungin kiinteistöt ja asuminen, mutta pienellä tarkastelulla huomaamme, että kyseinen aineisto ei ole täysin virheetöntä. -Avaa GeoCoding Lisäosat-valikosta GeoCoding \> GeoCoding. +![](img/harjoitus_4/image1.png) -![](img/harjoitus_5/image1.png) +Aineisto näyttää silmämääräisesti olevan kunnossa, mutta entä sen koneluettavuus? Jos aineisto ei ole kaikkien teknisten määritysten mukainen, voi olla että sillä ei pysty esimerkiksi suorittamaan kaikkia spatiaalisia operaatioita tai sen siirrossa formaatista toiseen tulee ongelmia. Tarkastetaan siis onko tässä aineistossa joitain mahdollisia ongelmia. Tähän tarkoitukseen löytyy QGISistä useita erilaisia työkaluja. -Testaa löytääkö lisäosa esimerkiksi kotiosoitteesi. Mikäli useassa kaupungissa on samanniminen katu, GeoCoding kysyy, minkä niistä haluat näyttää kartalla. +## Tarkista kelpoisuus (Check validity) -![](img/harjoitus_5/image2.png) +Aloitetaan aineiston koneluettavuuden (= aineiston laadun) tarkistus \"kevyimmällä\" tarkistustyökalulla. Valitse QGISin päävalikosta **Vektori \> Geometria-työkalut \> Tarkista kelpoisuus...**, jolloin QGISiin avautuu **Tarkista kelpoisuus -ikkuna**. -Löydetyistä osoitteista syntyy uusi tilapäinen tulostaso projektiisi. +![](img/harjoitus_4/image2.png) -![](img/harjoitus_5/image3.png) +Kyseinen algoritmi tekee kelpoisuustarkistuksen tason geometrioille. Geometriat luokitellaan kolmeen ryhmään (**Kelvollinen tulos, Virheellinen tulos** ja **Virhetuloste**) ja kullekin näistä luodaan uusi taso. Oletusarvoisesti algoritmi käyttää tiukkaa OGC-määritystä polygonin validoinnissa, mutta me emme halua ottaa tiukinta mahdollista määritystä huomioon, joten valitse  **Ignore ring self intersections**. Koska rakennus voi olla geometrialtaan täysin validi vaikka siinä olisi reikä, jätetään kyseiset virheilmoitukset huomiotta. Paina sitten **Suorita**. -Avaa nyt **GeoCoding-lisäosan** asetukset ja tutustu sen toimintaan. Se hyödyntää kerralla vain yhtä geokoodauspalvelua. Voit myös valita, mihin mittakaavaan kartta zoomautuu onnistuneen haun jälkeen. Uuden haun tulokset lisätään automaattisesti jo olemassa olevaan tulostasoon. Kuten huomaat, **GeoCoding-lisäosaan** voi syöttää vain yhden osoitteen kerrallaan, ja työkalu täytyy avata joka kerta uudelleen. Entä, jos geokoodattavana on pitkä lista osoitteita, esimerkiksi jonkin suuren yrityksen tai organisaation toimipisteet? +![](img/harjoitus_4/image3.png) -## DigiTransit.fi Geocoder +QGIS tuottaa oletusasetuksilla kolme väliaikaista tasoa, jotka se lisää projektiin. Saat vielä kohteiden määrän näkyviin klikkaamalla tasoa hiiren oikealla ja valitsemalla **Näytä kohteiden lukumäärä**. Kuten alla olevasta kuvasta näkyy, aineisto sisältää melkoisen määrän virheellisiä geometrioita. -### DigiTransit.fi - alkuvalmistelut +![](img/harjoitus_4/image4.png) -Gispo on julkaissut vuonna 2018 QGIS-lisäosan, joka mahdollistaa geokoodauksen suomalaisille osoitteille. Lisäosa hyödyntää Digitransitin geokoodausrajapintaa, jonka käyttäminen vaatii 4.3.2023 lähtien API-avaimen toimiakseen. Tämän vuoksi olemme tehneet lisäosaan päivityksen, joka mahdollistaa lisäosan käytön myös tämän muutoksen jälkeen. Ennen lisäosan lataamista lue ja tee seuraavan blogiartikkelimme mukaiset toimenpiteet QGISiin, jotta saat API-avaimen käyttöön: +Avaa **Virheellinen tulos -tason** attribuuttitaulu ja tarkastele **\_error-saraketta**. Sarake sisältää selkokielisen kuvauksen virheen luonteesta. Suurin osa virheilmoituksista on **Self-intersection-virheitä**, mikä tarkoittaa että polygoni leikkaa itsensä. Tämä analyysi tuo siis **tiedon virheellisistä kohteista, mutta ei auta niiden korjaamisessa**. -### DigiTransit.fi - Geocoder-aktivointi +## Topologian tarkastaja (Topology checker) -Gispon kehittämä **DigiTransit.fi Geocoder -lisäosa** hyödyntää mm. HSL:n Reittioppaan taustalla olevan DigiTransitin geokoodausta. Se käyttää kolmea osoitetietolähdettä: OpenStreetMap, Maastotietokanta ja Väestörekisterikeskus. Lisäksi siihen voi ladata listan osoitteista csv-tekstitiedostona. Osoitetietolähteidensä vuoksi lisäosa toimii vain suomalaisilla osoitteilla. Lisäosa kuuluu QGISin viralliseen lisäosien kirjastoon, joten voit etsiä ja asentaa sen samaan tapaan kuin edellisen lisäosan. +Seuraava vaihtoehto aineiston laatutarkistukseen on **Topologian tarkastaja -työkalu**. Se on QGISin ns. **ytimeen kuuluva lisäosa**, eli se tulee QGISin mukana, mutta sitä ei ole aina aktivoitu. Mene ylävalikosta **Lisäosat \> Hallitse ja asenna lisäosia...** ja kirjoita hakukenttään **\"Topologian tarkastaja\"**. Klikkaa työkalu aktiiviseksi, jolloin se ilmestyy ylävalikon **Vektori-valikkoon**. -![](img/harjoitus_5/image4.png) +![](img/harjoitus_4/image5.png) -Asentamisen jälkeen **Digitransit.fi-dialogi-ikkuna** aukeaa **Lisäosat-valikosta**. Huomaa, että ikkunassa on enemmän asetuksia, mutta edelleen voit hakea vain yhden osoitteen kerrallaan. Syötä sama osoite kuin edellistä lisäosaa testatessasi. Tämäkin lisäosa luo löytämistään osoitteista uuden tilapäisen tason. Millaisia tuloksia löydät nyt? +**Topologian tarkistin -paneeli** aukeaa seuraavasta **Topologian tarkastaja -kuvakkeesta** ![](img/harjoitus_4/image6.png). Aineiston topologisen eheyden voi tarkistaa tästä paneelista. -![](img/harjoitus_5/image5.png) +![](img/harjoitus_4/image7.png) -Hakeaksesi monta osoitetta kerralla tarvitset **csv-tiedoston**, johon osoitteet on tallennettu. Csv-tiedostoa käytettäessä lisäosa pitää avata yläpalkista **Prosessointi \> Työkalut**. Etsi työkalu kirjoittamalla hakukenttään "Digitransit" ja avaa se tuplaklikkauksella. +Valitse ensimmäiseksi **Topologian tarkastaja -paneelista Konfiguroi** ![](img/harjoitus_4/image8.png), jolloin QGISiin aukeaa uusi **Topologiasääntöjen asetukset -ikkuna**. Tässä ikkunassa voidaan määritellä ne säännöt, joiden mukaan QGIS käsittelee aineiston geometrioita. Säännöt voivat koskea vain yhtä tasoa tai ne voivat olla kahden tason välisiä sääntöjä. Sääntöjä voi olla esimerkiksi etteivät kaksi tasoa saa olla päällekkäin. Lisää aineistoon kolme sääntöä kuvan mukaisesti ja paina **OK**. -![](img/harjoitus_5/image6.png) +![](img/harjoitus_4/image9.png) -Valitse kurssihakemistosta tiedosto **elykeskukset.csv**. Anna työkalulle osoitekenttien nimet, jotta se osaa etsiä csv-tiedostosta osoitteet oikein. Tässä aineistossa osoitekentän nimi on katuosoite ja kunnan paikkakunta, ja ne täytyy muistaa erottaa toisistaan pilkulla. Klikkaa **Suorita** käynnistääksesi prosessoinnin. +Klikkaa sitten **Topologian tarkastaja -paneelissa Tarkasta kaikki -kuvaketta** ![](img/harjoitus_4/image10.png), jolloin QGIS ajaa kaikki äsken listatut säännöt. Minkälaisia tuloksia saat? Tarkastele tuloksia paneelin valikosta. -![](img/harjoitus_5/image7.png) +## Tarkista geometriat (Geometry checker) -Tuloksena syntyy tilapäinen tulostaso. Tarkastele tuloksia kartalla ja attribuuttitaulussa. Alkuperäisessä csv-tiedostossa on 15 riviä, ja kaikille löytyy osoite. Attribuuttitaulusta voit tutkia myös sijaintien luotettavuutta. Minkä ELY-keskuksen sijainti on epätarkin? Zoomaa kohteeseen kartalla. Tämäkin kohde osuu OpenStreetMap-kartassa oikean rakennuksen sisään. +Kolmas ja järein vaihtoehto geometrioiden tarkistukseen on **Tarkista geometriat -työkalu**. Tämäkin työkalu pitää käydä aktivoimassa edellisen tapaan lisäosien valikoimasta. Tämäkin työkalu ilmestyy ylävalikon **Vektori-valikkoon**. -Vastaavanlainen työkalu, osoitteiden geokoodaus csv-tiedostosta, löytyy mm. lisäosasta MMQGIS. Sen tietolähteet ovat Google, OpenStreeetMap, US Census Bureau ja Esri. +![](img/harjoitus_4/image11.png) -Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + S** tai päävalikosta **Projekti \> Tallenna**. +Kuten heti huomaat kyseisen työkalun valikosta, **Tarkista geometriat -työkalu** antaa ylivoimaisesti laajimman valikoiman validoinnin toiminnallisuuksista. Tehdään kuitenkin perustason tarkastus aineistolle ja etsitään ainoastaan duplikaatteja. Valitse siis kuvan mukaiset asetukset aineiston validoinnissa ja valitse viimeiseksi vaihtoehdoksi (vieritä ikkunaa alaspäin) **Muokkaa syötetasoja**. Paina sitten **Suorita**. + +![](img/harjoitus_4/image12.png) + +Työkalu ajaa algoritmia hetken, mutta palauttaa sen jälkeen virheilmoitukset havaitsemistaan virheellisistä kohteista. Voit tarkastella yksittäistä virhettä klikkaamalla riviä; kartta zoomautuu oikeaan sijaintiin ja virheellinen kohde korostuu. Virheitä voi korjata yksitellen, mutta myös useamman virheen voi valita ja korjata isomman osion kerralla. Ennen varsinaista virheiden korjausta voit määrittää virheiden ratkaisumenetelmät valitsemalla **Error resolution settings**. Aseta **Duplicate-kohtaan** ratkaisuksi **Remove duplicates**. + +![](img/harjoitus_4/image13.png) + +Korjaa virheet valitsemalla **Fix selected errors using default resolution**, jolloin QGIS poistaa duplikaattigeometriat, kuten määrittelimme äsken. + +![](img/harjoitus_4/image14.png) + +Voit lukea lisää työkalusta QGISin dokumentaatiosta:  + + ::: hint-box -Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti koulutustuki\@gispo.fi-sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. +Miksi kaikki menetelmät tuottivat niin erilaisia tuloksia ja miksi vaihtoehtoja tarkastukseen on niin monta? Entä mikä olisi omalle aineistollesi paras mahdollinen tapa tarkistukseen? ::: + +## Geometrian ja topologian validointi tasoa muokattaessa + +Voit välttää virheellisten geometrioiden muodostumista jo aineistoa digitoidessa ja editoidessa. Avaa muokattavan tason **Ominaisuudet** -ikkuna ja mene **Digitointi** -välilehdelle. Ruksi aktiivisiksi haluamasi korjaukset. + +![](img/harjoitus_4/image15.png) + +Nimestään huolimatta tämä toiminto ei tee korjauksia automaattisesti, mutta huomauttaa virheellisistä geometrioista.  + +![](img/harjoitus_4/image16.png) + +Editoidessa voit hyödyntää myös **Tarttumisen työkalut** -palkin toimintoa päällekkäisten kohteiden digitoinnin välttämiseen. + +![](img/harjoitus_4/image17.png) + +Kun olet valmis, tallenna projektitiedosto kurssihakemistoon pikanäppäimellä **CTRL + T** (englanninkielisessä QGISissä **CTRL + S**) tai päävalikosta **Projekti \> Tallenna**. + +::: hint-box +Psst! Muista tukipalvelu! Koulutuksen jälkeen saat henkilökohtaista tukea Gispon tukipalvelun kautta lähettämällä yksinkertaisesti tuki\@gispo.fi-sähköpostiosoitteeseen kysymyksen tai kommentin jostakin sinua mietityttävästä asiasta. Gispon tiimi auttaa sinua toimiesi äärellä. Kysymykset käsitellään henkilökohtaisesti. +::: \ No newline at end of file diff --git a/src/GS002/index.Rmd b/src/GS002/index.Rmd index e1d3dcce..d2c624a7 100644 --- a/src/GS002/index.Rmd +++ b/src/GS002/index.Rmd @@ -1,20 +1,21 @@ --- title: "Suunnittelu ja editointi QGISillä" -author: "Gispo Suomi Oy." +author: "Gispo Oy." date: "`r Sys.Date()`" site: "bookdown::bookdown_site" -abstract: "Syventävä kurssi datan tuottamisesta QGISissä" +abstract: "Syventäväkurssi datan tuottamisesta QGISissä." output: bookdown::html_book: toc: true theme: null template: custom.html css: custom.css - split_by: rmd - number_sections: false + split_by: chapter+number #rmd documentclass: book --- + + # Suunnittelu ja editointi QGISillä ## Tervetuloa Syventävälle QGIS-kurssille! @@ -28,13 +29,7 @@ Tavoitteena on saada kaikki irti QGISin ominaisuuksista erityisesti datan tuotta Voit ladata harjoituksissa käytettävän kurssihakemiston tästä linkistä: ::: note-box -[Kurssihakemisto.zip](https://drive.google.com/file/d/18CBVmGG17ZnPD20f8bsEs3Mn32wQxQQm/view?usp=sharing) -::: - -Ja kurssin harjoitukset PDF-muodossa tästä linkistä: - -::: note-box -[Harjoitukset PDF-muodossa](https://github.com/gispocoding/master-training-data/releases/download/GS002/GS002.pdf) +[Kurssihakemisto.zip](https://drive.google.com/file/d/15LMwj7HQfo7Br8qZ1Uf7cOo7lF424r_4/view?usp=drive_link) ::: ## Lukuohje @@ -48,9 +43,7 @@ Ja kurssin harjoitukset PDF-muodossa tästä linkistä: **Komentorivillä** suoritettavat komennot on merkitty seuraavasti: ::: commandline-box -``` shell sudo lsb_release -a -``` ::: **Tiedostojen sisältö** on esitetty seuraavasti: @@ -62,9 +55,7 @@ sudo lsb_release -a **HTML- ja CSS-koodit, SQL-komennot sekä Python-scriptit** on esitetty seuraavasti: ::: code-box -``` sql SELECT version(); -``` ::: **Kysymykset, lisätiedot ja vihjeet** on esitetty seuraavasti: @@ -99,8 +90,8 @@ Ohessa muutamia web-sivustoja, joista saat lisätietoja: ## Virheet -Jos havaitset materiaalissa virheitä, niin pyydämme ilmoittamaan niistä kouluttajalle tai sähköpostilla osoitteeseen [info\@gispo.fi](mailto:info@gispo.fi){.email}. +Jos havaitset materiaalissa virheitä, niin pyydämme ilmoittamaan niistä kouluttajalle tai sähköpostilla [info\@gispo.fi-osoitteeseen](mailto:info@gispo.fi-osoitteeseen){.email}. ## Lisenssi ja oikeudet -Nämä materiaalit on "Suunnittelu ja editointi QGISillä" -kurssille kehittänyt Gispo Suomi Oy. Materiaalit on lisensoitu seuraavalla lisenssillä: [CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0/) +Nämä materiaalit on "Suunnittelu ja editointi QGISillä"-kurssille kehittänyt Gispo Oy. Materiaalit on lisensoitu seuraavalla lisenssillä: [CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0/)