Skip to content

Instantly share code, notes, and snippets.

View thbaumann's full-sized avatar

Thomas Baumann @work thbaumann

View GitHub Profile
# for testing in QGIS console
style_name = 'Druckstufen'
layer=iface.activeLayer()
stylemanager = layer.styleManager()
current_style = stylemanager.currentStyle()
#print(curr_style)
# stil nur wechseln wenn nicht schon aktuell eingestellt
if style_name != current_style:
stylemanager.setCurrentStyle(style_name)
Kategorisierter Stil per PyQGIS: größtenteils basierend auf: https://gis.stackexchange.com/a/382742/67477
# Code für die QGIS Konsole:
styling_layer = iface.activeLayer() # Hinweis: im Plugin self.iface.activeLayer()
spalten_name = 'DRUCKSTUFE'
rampen_name = 'Greens'
field_index = styling_layer.fields().indexFromName(spalten_name)
from qgis.core import *
from qgis.gui import *
import os.path
@qgsfunction(args='auto', group='Custom',usesgeometry=False)
def layername_aus_pfad(current_path, feature, parent):
"""
Layername aus dem Pfad ermitteln
current_path: an die Funktion uebergebener pfad, wie z.B. layer_by_path('D:\loeschen\gemarkungen.shp')
"""
path=os.path.normpath(current_path)
from qgis.core import *
from qgis.gui import *
@qgsfunction(args='auto', group='Custom')
def eindeutige_legende1( layername, feature, parent,context):
try:
project = QgsProject.instance()
ausgabe=None
legendenlayer = QgsExpressionContextUtils.projectScope(project).variable('eindeutig')
@thbaumann
thbaumann / pipes.geojson
Last active June 26, 2020 11:55
pipes test data
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@thbaumann
thbaumann / export_as_gpx.py
Created June 22, 2020 15:25
export selected features as gpx for use in qgis action
layer = QgsProject.instance().mapLayer('[% @layer_id %]')
from qgis.core import Qgis, QgsVectorFileWriter
exportpath="D:/loeschen/test.gpx"
error, error_string = QgsVectorFileWriter.writeAsVectorFormat( layer,
exportpath,
"UTF-8",
layer.crs(),
"GPX",
onlySelected=True)
@thbaumann
thbaumann / filerotator.py
Created April 1, 2020 12:28 — forked from RWJMurphy/filerotator.py
Python class and utility for file rotation. Configurable daily, weekly and monthly retention; can use hard links to save space; supports `argparse` config files.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: ft=python ts=4 sw=4 expandtab
#
# Copyright (c) 2013 Reed Kraft-Murphy <[email protected]>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
settings=QSettings()
test=settings.allKeys()
errorcounter=0
for i in test:
if(u'Projections/EPSG:25832/EPSG:31467_coordinateOp' in i):
if settings.value(i)!=u'+proj=pipeline +step +inv +proj=utm +zone=32 +ellps=GRS80 +step +inv +proj=hgridshift +grids=BWTA2017.gsb +step +proj=tmerc +lat_0=0 +lon_0=9 +k=1 +x_0=3500000 +y_0=0 +ellps=bessel':
errorcounter+=1
else:
settings.setValue('Projections/EPSG:25832/EPSG:31467_coordinateOp',u'+proj=pipeline +step +inv +proj=utm +zone=32 +ellps=GRS80 +step +inv +proj=hgridshift +grids=BWTA2017.gsb +step +proj=tmerc +lat_0=0 +lon_0=9 +k=1 +x_0=3500000 +y_0=0 +ellps=bessel')
@echo off
call "%~dp0\o4w_env.bat"
call qt5_env.bat
call py3_env.bat
@echo off
path %OSGEO4W_ROOT%\apps\qgis\bin;%PATH%
set QGIS_PREFIX_PATH=%OSGEO4W_ROOT:\=/%/apps/qgis
set GDAL_FILENAME_IS_UTF8=YES
rem Set VSI cache to be used as buffer, see #6448
set VSI_CACHE=TRUE
@thbaumann
thbaumann / GTiff_compression_benchmark.py
Created January 27, 2020 12:51 — forked from kr-stn/GTiff_compression_benchmark.py
Benchmark filesize and read/ write times for various GeoTiff compression algorithms
__author__ = 'kersten.clauss'
"""Benchmark different GeoTiff compression algorithms.
Usage: GTiff_compression_benchmark.py some_geo.tif
Requires the GDAL tools to be present and executable from the command line of your system.
This script will take a GeoTiff as input and create copies with different compression algorithms from it.
It measures the filesize, compression and decompression times and returns them as a table.