QGIS är bra på väldigt mycket, vilket jag inte minst gav exempel på igår. 3D analys är dock inte ett område där QGIS briljerar.
Det finns dock insticksprogram som kan fylla några av de luckor som finns, och dessa gör detta med varierande kvalité.
Jag har tidigare skrivit om hur man via insticksprogram kan visualisera i 3D (inlägg, video) och nu är det dags för ett insticksprogram för siktfältsanalys eller Viewshed på engelska.
Insticksprogrammet jag kommer att använda här heter ”Viewshed Analysis” och återfinns bland de experimentella insticksprogrammen. När du söker efter det så gäller det således att du även valt att visa dessa under fliken inställningar i dialogen.
Innan vi börjar, några förutsättningar:
- Alla data måste ha samma referenskoordinatsystem. Se exempelvis till att allt är projicerat i SWEREF99TM och att höjder är angivna i meter.
- Använd inte å, ä, ö!!! Dessa tecken i vare sig filnamn eller ens sökvägar kommer göra att skriptet kraschar.
- Kontrollera dina resultat! Är de rimliga? Jag har haft lite blandad framgång med detta insticksprogram.
Resultatet:
Höjddata och ett eget lager med en observatörspunkt, båda projicerade i SWEREF99TM är inlästa och när Viewshed verktyget startas så känner det igen dessa och visar dem som förvalda i rutan för höjdraster och obervatörspunkter.
Man skall sedan peka ut en plats att spara resultatet på (inga å, ä, ö) och göra de inställningar man önskar. Här väljer jag att begränsa området till 10000 meter (eftersom jag har projicerade data blir enheten meter), observatörshöjden 2 meter, samt att det är en vanlig enkel binär siktfältsanalys, ser jag eller ser jag inte marken från observatörspunkten.
Jag känner såhär direkt inte riktigt att jag kan lita på resultatet ovan, men det är ganska grova höjddata och om jag höjer observatören så borde jag se betydligt mer, även söder ut.
Hmm. Ja mer blev synligt men kanske inte riktigt som jag förväntat. Lite logiskt kan det ju vara. Om jag provar att ställa in att mitt mål också har en höjd, säg 20 meter. Då borde även sådant som nu ligger lite i ”skugga” bli synligt.
Vänta nu lite… Det ser ut som att den radie jag satt stämmer, om man utgår från en punkt runt 3000 meter norr om min observatör. Om så är fallet så blir helt plötsligt analyserna trovärdiga, men det är ju hopplöst att göra beräkningar på detta sätt.
Ok, jag provar oprojicerade data i WGS84.
Okej… För det första, 10000 meter är ca 0,09 grader, men uppmätt radie i bilden är endast 5000 meter (som mest). För det andra, angivna höjder måste vara i meter, antagligen för att höjd anges i meter i data. För det tredje, nu är centrum i analysresultatet ännu längre norr om observatören!
Jag tar och gör ett nytt test med helt andra data på en helt annan plats. Rift valley Afrika:
Hmm. Nu verkar det stämma. Jag provar att zooma in lite mera och ändra värdena lite.
I bilden ovan har jag lagt till en höjdskuggning för att göra det lite tydligare hur väl resultatet faktiskt stämmer.
Vad beror då skillnaderna på? Upplösningen i höjddata skiljer, men det borde inte påverka. Latituden skiljer sig runt 50 grader, men hur skulle detta påverka resultatet på detta sätt?
Eftersom SRTM med 1 sekunds upplösning nu även är släppt över det område jag började med så tar jag och laddar hem dessa data och gör exakt samma sak igen, fast nu över det första området.
Nu blev det ju helt galet! Felet den här gången är nära 140 km! Just nu verkar felet dels bero på latituden, men även på upplösningen i data.
Jag ger upp!
Sammanfattning
Det finns fler funktioner i insticksprogrammet, men eftersom jag inte ens får rimliga resultat av dessa enkla tester så bryr jag mig inte om att testa dessa. Verktyget finns, men jag får det helt enkelt inte att fungera på ett användbart sätt, och kan därför inte rekommendera det till någon.
Om du testar det och får det att fungera så tala gärna om vad jag gjort för fel. Det är många som frågar efter funktionen och det finns klar potential i tillägget, men man är helt enkelt inte där än.
I GRASS skall det finnas ett verktyg (r.viewshed) men detta kommer jag inte åt via mina QGIS tillägg och jag tycker att GRASS GUI är ganska krångligt, och något direkt övrigt alternativ har jag faktiskt inte hittat. Har du?
Tack för att du tog dig tid och skrev om det även om det blev lite nedslående. Men det kanske finns någon som utvecklar 3D-analyser i QGIS så småningom.
Andra analyser har jag i alla fall lyckats göra, som hillshade, slope och aspect. Alltid något.