# Skrip 1.1: memeriksa isi sebuah raster (jalankan di Python Console QGIS). Penulis: Badar Mubarok Yogaswara
# Ubah DATA ke folder paket-b3 di komputer Anda.
import os
import processing
from qgis.core import QgsRasterLayer

DATA = os.environ.get("B3_DATA", r"C:/KPH_Contoh/paket-b3")

lay = QgsRasterLayer(DATA + "/Citra_B04.tif", "Citra_B04")
if not lay.isValid():
    raise SystemExit("Raster tidak terbaca. Periksa DATA: " + DATA)
print("Terbaca:", lay.isValid())
print("Ukuran (kolom x baris):", lay.width(), "x", lay.height())
print("Jumlah band:", lay.bandCount())
print("Ukuran piksel (m):", lay.rasterUnitsPerPixelX(), "x", lay.rasterUnitsPerPixelY())
print("CRS:", lay.crs().authid())
print("Tipe data band 1:", lay.dataProvider().dataType(1).name)

hasil = processing.run("native:rasterlayerstatistics", {"INPUT": lay, "BAND": 1})
print("Jumlah piksel:", hasil["COUNT"])
print("Min:", hasil["MIN"], " Maks:", hasil["MAX"], " Rata-rata:", round(hasil["MEAN"], 1))
