Forum QGIS
Kalkulator rastra - wyciąganie maksymalnych wartości - Wersja do druku

+- Forum QGIS (http://forum.quantum-gis.pl)
+-- Dział: Desktop GIS (http://forum.quantum-gis.pl/forum-4.html)
+--- Dział: QGIS (http://forum.quantum-gis.pl/forum-5.html)
+--- Wątek: Kalkulator rastra - wyciąganie maksymalnych wartości (/thread-758.html)



Kalkulator rastra - wyciąganie maksymalnych wartości - Grzehoow - 31-07-2012

Problem polega na tym:
Mam dwie pokrywające się przestrzennie warstwy rastrowe "A" i "B" o jednakowej wielkości komórek. Jako wynik obliczeń chciałbym uzyskać najwyższą wartość komórki w danej lokalizacji. Innymi słowy - jeśli w danym punkcie przestrzeni są dwie komórki - rastra A i rastra B, to na mapie wynikowej chciałbym otrzymać wartość komórki o wyższej wartości (wartość maksymalną).

Jakie wyrażenie wpisać w kalkulatorze aby uzyskać taką mapę wynikową?

Nie znam się na języku pythona, a problem ten prawdopodobnie przekracza funkcjonalność dostępnych przycisków i operatorów w kalkulatorze rastra, a na pewno przekracza moją funkcjonalność matematyczno-informatyczną Wink


RE: Kalkulator rastra - wyciąganie maksymalnych wartości - borys - 31-07-2012

Ogólnie mówiąc: jeżeli a>b to a, jeżeli a<=b to b. Operacje warunkowe w kalkulatorze rastrów są zapisywane nieco nietypowo: nawias (a>b) przyjmuje wartość 1, jeśli warunek jest spełniony i 0, jeśli nie jest spełniony. Można go zatem pomnożyć przez pożądaną wartość dla spełnionego warunku. Jeśli warunek nie jest spełniony, to całe wyrażenie ma wartość zero i można do niego dodać alternatywne.

Zakładając, że rastry nazywają sie a i b, ostateczne wyrażenie będzie wyglądało:

(a@1 > b@1) * a@1 + (a@1 <= b@1) * b@1