Skip to content

Instantly share code, notes, and snippets.

@kylefelipe
Last active July 9, 2024 13:46
Show Gist options
  • Save kylefelipe/f02e9b3140964a57325443d4751f8e29 to your computer and use it in GitHub Desktop.
Save kylefelipe/f02e9b3140964a57325443d4751f8e29 to your computer and use it in GitHub Desktop.
Qgis crash when run script
import os
import sys
from qgis.core import (
QgsApplication,
QgsProject,
QgsCoordinateReferenceSystem,
QgsProcessingContext,
QgsProcessingAlgorithm,
)
def ensure_paths(paths):
for p in paths:
if p not in sys.path:
sys.path.append(p)
# Busca o usuário que está executando o script
user = os.getenv("USER")
qgs_paths = [
"/usr/share/qgis/python",
f"/home/{user}/.local/share/QGIS/QGIS3/profiles/default/python",
f"/home/{user}/.local/share/QGIS/QGIS3/profiles/default/python/plugins",
"/usr/share/qgis/python/plugins",
# "/usr/lib/python310.zip",
"/usr/lib/python3.10",
"/usr/lib/python3.10/lib-dynload",
f"/home/{user}/.local/lib/python3.10/site-packages",
"/usr/local/lib/python3.10/dist-packages",
"/usr/lib/python3/dist-packages",
f"/home/{user}/.local/share/QGIS/QGIS3/profiles/default/python",
"/usr/lib/qgis",
]
ensure_paths(qgs_paths)
QgsApplication.setPrefixPath("/usr/bin/qgis", True)
app = QgsApplication([], False)
app.initQgis()
from processing.core.Processing import Processing
Processing.initialize()
from qgis import processing
from qgis.core import QgsMeshLayer, QgsVectorLayer, QgsProviderRegistry
mesh_path = (
'NETCDF:"variaveis_2021_1.nc"'
)
points_path = (
"estacoes_meteorologicas_bacia.gpkg"
)
print(QgsProviderRegistry.instance().providerList())
mesh_layer = QgsMeshLayer(mesh_path, "mesh", "mdal")
# Set mesh crs to 4326
src = QgsCoordinateReferenceSystem("EPSG:4326")
print(mesh_layer.isValid())
print(mesh_layer)
mesh_layer.setCrs(src)
points_layer = QgsVectorLayer(points_path, "points", "ogr")
configs = {
"INPUT": mesh_layer,
"DATASET_GROUPS": [0, 1],
"STARTING_TIME": {"type": "dataset-time-step", "value": [0, 0]},
"FINISHING_TIME": {"type": "dataset-time-step", "value": [0, 743]},
"TIME_STEP": 0,
"INPUT_POINTS": points_layer,
"COORDINATES_DIGITS": 8,
"DATASET_DIGITS": 8,
"OUTPUT": "example_test.csv",
}
processing.run("native:meshexporttimeseries", configs)
app.exitQgis()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment