Plugin for working with 3Di models in QGIS
Branch: master
Clone or download
Latest commit 8276ee1 Dec 5, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
commands Enable PEP8 check in build process and fix pep8 errors (#227) Apr 23, 2018
datasource [DONE] Renier wb check rain (#309) Dec 4, 2018
docs/developers [Done] Madeleine add control structures (#176) Sep 27, 2017
external
help First commit Apr 5, 2016
i18n fix unload of toolbox and small pep8 improvements Apr 11, 2016
icons
layer_styles
mixins implemented initial implementation of model manager Aug 3, 2016
models [DOING] Renier upgrade toolbox to latest threedigrid (#298) Nov 21, 2018
scripts
sql_models replace checkedin sqlalchemy and geoalchemy2 with submodules Jun 20, 2017
test [DOING] Renier upgrade toolbox to latest threedigrid (#298) Nov 21, 2018
threedi_schema_edits
threedi_statistics [DOING] Renier upgrade toolbox to latest threedigrid (#298) Nov 21, 2018
ui Richard filter result selection (#276) Oct 9, 2018
utils
views [DOING] Renier upgrade toolbox to latest threedigrid (#298) Nov 21, 2018
water_balance
wiki Add selection in screenshot May 10, 2016
.gitattributes Saving files before changing line endings Jun 13, 2017
.gitignore Add threedigrid to requirements.txt (#214) Apr 4, 2018
.travis.yml integrate water balance tool (incl jackis Bugfix link with multiple t… Aug 3, 2018
CHANGES.rst
LICENSE.rst Create LICENSE.rst Apr 13, 2016
Makefile integrate water balance tool (incl jackis Bugfix link with multiple t… Aug 3, 2018
README.rst integrate water balance tool (incl jackis Bugfix link with multiple t… Aug 3, 2018
__init__.py integrate water balance tool (incl jackis Bugfix link with multiple t… Aug 3, 2018
metadata.txt Back to development: 1.7 Nov 28, 2018
misc_tools.py [DOING] Renier delete jacki's stats (#293) Nov 1, 2018
plugin_upload.py First commit Apr 5, 2016
pluginbuilder README.txt Revert some potentially dangerous changes Feb 6, 2017
pylintrc First commit Apr 5, 2016
requirements-dev.txt better Jun 5, 2018
requirements.txt [DOING] renier waterbalance enable current interception (#300) Nov 21, 2018
resources.py integrate water balance tool (incl jackis Bugfix link with multiple t… Aug 3, 2018
resources.qrc
setup.cfg TODO: threedi_statistics pep8 ignored, but should eventually be fixed Jun 6, 2018
threedi_graph.py move icons to icons folder (#226) Apr 23, 2018
threedi_result_selection.py Add new groundwater result types for Lizard downloading #245 May 29, 2018
threedi_sideview.py move icons to icons folder (#226) Apr 23, 2018
threedi_toolbox.py move icons to icons folder (#226) Apr 23, 2018
threedi_tools.py
version.rst

README.rst

ThreeDiToolbox

https://travis-ci.org/nens/ThreeDiToolbox.svg?branch=master

A QGIS plugin with tools for working with models and netCDF results from 3Di hydraulic/hydrologic modelling software.

The main features are:

  • Visualization of model network structure and discretization
  • Time series visualization
  • Sideviews
  • Visualize results spatially
  • An extensible toolbox with custom Python scripts (for e.g. statistical analysis)
  • Import of sufhyd files

Take a look at the Wiki for more information.

Installing requirements

  • QGIS 2.14 or 2.16 (64 bit is recommended)
  • pyqtgraph
  • sqlalchemy version 1.1.0 or higher
  • geoalchemy2 with custom modifications, source available here: https://github.com/nens/geoalchemy2
  • netCDF4 (included only for Windows using 64 bit QGIS)
  • h5py (included for Windows)

Most Python dependencies are included in the distribution of the plugin, but if you clone this repository you need to manually install them in the external directory:

$ pip install -r requirements.txt --target=external --no-deps -U

Windows

The package includes the dependency 'netCDF4' for 64 bit installations of QGIS under Windows (tested on Windows 7 SP1 and Windows 10). If you are using the 32 bit version of QGIS, it is best to upgrade to the 64 bit version or build the Python netCDF4 including C bindings yourself.

Linux

For Linux, NetCDF and HDF5 dependencies are not included, so you have to install them:

$ sudo apt-get install libhdf5-serial-dev libnetcdf-dev

Install Python packages globally because we don't include them for Linux:

$ sudo pip install -r requirements-dev.txt -U

You might need to install the Qt4 PostgreSQL driver for loading sufhyd:

$ sudo apt-get install libqt4-sql-psql

Installation

The plugin can be added using one of the following ways:

  • Using the Lizard QGIS repository: via the QGIS menu bar go to Plugins > Manage And Install Plugins... > Settings; add https://plugins.lizard.net/plugins.xml and reload. Install the plugin by selecting ThreeDiToolbox.
  • Copy or symlink the repo directory to your plugin directory (on Linux: ~/.qgis2/python/plugins, on Windows: C:\\Users\<username>\.qgis2\python\plugins\); make sure to install external dependencies (see Requirements section).

Release

Make sure you have zest.releaser with qgispluginreleaser installed. To make a release (also see: [1]):

$ cd /path/to/the/plugin
$ fullrelease  # NOTE: if it asks you if you want to check out the tag press 'y'.

Manually copy to server:

$ scp ThreeDiToolbox.0.2.zip <user.name>@packages-server.example.local:/srv/packages.lizardsystem.nl/var/plugins

Tests

Make sure test deps from requirements-dev.txt are installed. Run tests with:

$ source scripts/run-env-linux.sh /usr  # this should be automated (e.g. using Makefile)
$ make test

Notes

[1]Under the hood it calls make zip which is modified a bit (see Makefile, old zip directive is still avaiable) so that it doesn't copy everything to your QGIS plugin directory.