satupeta-main/utils/qgis_init.py

31 lines
771 B
Python

# utils/qgis_init.py
import os
import sys
# Lokasi instalasi QGIS di Linux (Ubuntu / Debian)
QGIS_PREFIX = "/usr"
# Path modul Python QGIS
sys.path.append("/usr/share/qgis/python")
# Environment variable agar QGIS dapat berjalan headless (tanpa GUI)
os.environ["QGIS_PREFIX_PATH"] = QGIS_PREFIX
os.environ["QT_QPA_PLATFORM"] = "offscreen"
from qgis.core import QgsApplication
from qgis.analysis import QgsNativeAlgorithms
import processing
from processing.core.Processing import Processing
def init_qgis():
qgs = QgsApplication([], False)
qgs.initQgis()
# Register QGIS processing provider
Processing.initialize()
QgsApplication.processingRegistry().addProvider(QgsNativeAlgorithms())
print("QGIS initialized successfully")
return qgs