Skip to content

Instantly share code, notes, and snippets.

@signedav
signedav / action_script_duplicate.py
Last active October 30, 2017 11:28
Action Script for Duplicate
from qgis.PyQt import QtWidgets
project = QgsProject.instance()
layer = QgsProject.instance().mapLayer('[% @layer_id %]')
layer.startEditing()
feature_count=0
children_info=''
for f in layer.selectedFeatures():
1 std::__atomic_base<int>::operator-- atomic_base.h 304 0x4250aa
2 QAtomicOps<int>::deref<int> qatomic_cxx11.h 271 0x7ffff67be415
3 QBasicAtomicInteger<int>::deref qbasicatomic.h 114 0x7ffff67be315
4 QExplicitlySharedDataPointer<QgsCoordinateTransformContextPrivate>::~QExplicitlySharedDataPointer qshareddata.h 165 0x7ffff6c02b1d
5 QgsCoordinateTransformContext::~QgsCoordinateTransformCon

Vorarbeiten

Erstellen aller Tables:

- Stardardaufnahmen 
- Forstliche Langzeitprojekte
- Backoffice
- Sonderaufnahmen
- Referenztables
- Basisdatentabellen (gebraucht für Views)

Wird von DB gemacht -> mit dump restoren und darauf aufbauen.

@signedav
signedav / buildbug
Created March 28, 2018 07:07
buildbug
cd 3rdparty/ && ( test -e Makefile || /home/david/Qt/5.9.4/android_x86/bin/qmake -o Makefile /home/david/dev/opengisch/QFieldWork_camfix01/3rdparty/3rdparty.pro -spec android-g++ CONFIG+=debug CONFIG+=qml_debug ) && make -f Makefile
make[1]: Entering directory '/home/david/dev/opengisch/build-QField-Android_for_x86_GCC_4_9_Qt_5_9_4_for_Android_x86-Debug/3rdparty'
cd tessellate/ && ( test -e Makefile || /home/david/Qt/5.9.4/android_x86/bin/qmake -o Makefile /home/david/dev/opengisch/QFieldWork_camfix01/3rdparty/tessellate/tessellate.pro -spec android-g++ CONFIG+=debug CONFIG+=qml_debug ) && make -f Makefile
make[2]: Entering directory '/home/david/dev/opengisch/build-QField-Android_for_x86_GCC_4_9_Qt_5_9_4_for_Android_x86-Debug/3rdparty/tessellate'
make[2]: Nothing to be done for 'first'.
make[2]: Leaving directory '/home/david/dev/opengisch/build-QField-Android_for_x86_GCC_4_9_Qt_5_9_4_for_Android_x86-Debug/3rdparty/tessellate'
make[1]: Leaving directory '/home/david/dev/opengisch/build-QField-Android_for_x86
@signedav
signedav / c++info.md
Created July 30, 2018 09:18
generelle c++ info (im qgs Project)
  • für for( const A& a : b ) vorher e const Kopie vom Container mache (const B b = x.getSomeList();) Usnahm: wänns inere const-Funktion ufere member-Variable isch
@signedav
signedav / qfield_relationeditorwidget.md
Last active July 31, 2018 08:53
QField Relation Editor Widget

Relation Editor Widget on QField

Here are the use cases and how the relation editor widget could look in qfield with the different behavior for one-to-many and many-to-many relationships.

1:N Relations

The childfeatures are listed. In any case, the delete icons is black *1. This means the child features will be deleted.

list_1

By pressing on the feature the "embedded" Form pops up:

@signedav
signedav / performance_qgis.txt
Created January 22, 2019 09:02
Schaffhausen Performance QGIS Server
2019-01-22 10:00:53.783 CET [4912] LOG: Anweisung: set client_encoding to 'UNICODE'
2019-01-22 10:00:53.784 CET [4912] LOG: Anweisung: select regclass('pg_class')::oid
2019-01-22 10:00:53.785 CET [4912] LOG: Anweisung: BEGIN
2019-01-22 10:00:53.786 CET [4912] LOG: Anweisung: DECLARE oidcursor BINARY CURSOR FOR select regclass('pg_class')::oid
2019-01-22 10:00:53.786 CET [4912] LOG: Anweisung: fetch forward 1 from oidcursor
2019-01-22 10:00:53.787 CET [4912] LOG: Anweisung: CLOSE oidcursor
2019-01-22 10:00:53.787 CET [4912] LOG: Anweisung: COMMIT
2019-01-22 10:00:53.788 CET [4912] LOG: Anweisung: SELECT postgis_version()
2019-01-22 10:00:53.794 CET [4912] LOG: Anweisung: SELECT postgis_geos_version(),postgis_proj_version()
2019-01-22 10:00:53.795 CET [4912] LOG: Anweisung: SELECT EXISTS ( SELECT c.oid FROM pg_class AS c JOIN pg_namespace AS n ON c.relnamespace=n.oid WHERE n.nspname='topology' AND c.relname='topology' )
@signedav
signedav / wal_issue_qfield.md
Created January 25, 2019 14:34
The WAL files

It seems that while working with WAL we could loose data we digitized on QField after synchronizing.

Simple tests on QField:

  1. copied the project to my mobile
  2. edits
  3. copied the project to computer and sync (without closing on mobile)

-> changes are not synchronized

With closing:

@signedav
signedav / trigger_logic.md
Last active January 31, 2019 09:45
trigger logic

cover on INSERT

take level (even when NULL or nothing) as Z

wastewater_node on INSERT

take bottom level (even when NULL or nothing) as Z

reach and reach_point on INSERT

@signedav
signedav / qfield_android.md
Created February 13, 2019 15:49
qfield android stuff

Kuhns Vorgaben

  • x86 (anstatt arm)

  • im BIOS Virtualisierig aktiviere (falls /dev/kvm nöd existiert)

  • neuers Gradle bruche (siehe Pull opengisch/QField#252)

  • Zum direkt im QtCreator z'kompiliere

Build chain installiere (android sdk / android ndk /qt 5.9.4)