40 Commits

Author SHA1 Message Date
Peter Petrik
e1068e61cb
Merge pull request #33388 from PeterPetrik/mesh3d_averaging_methods 2019-12-18 09:57:22 +01:00
Vincent Cloarec
c252a3ad4c [mesh] Fixes time reference for mesh layer #32186 #33399 #31933 (#33410)
[FEATURE] [mesh] Load reference time from MDAL when available

Also adds combo box to let the user set the provider time unit. This is particularly useful when MDAL incorrectly recognised the time units in the raw dat format (for example format does nof follow spec and it is not possible to determine if time interval is in hours or days)

fix #32186 
fix #33399
fix #31933
2019-12-17 14:56:49 +01:00
Peter Petrik
2564b021d8 introduce way for plugins to retreive 3d stacked data values [API] 2019-12-13 16:30:14 +01:00
Peter Petrik
6febf38e10 [mesh] support active flag capability of MDAL. mesh layers for datasets that does not support active flags should not take less memory and load faster 2019-12-12 08:37:55 +01:00
Peter Petrik
b93dfdd0b3
[feature] Support datasets with data defined on faces in mesh calculator (#33248)
* [feature] support datasets with data defined on faces in mesh calculator, fix #30219, fix #30170

added "driver" and "group name" to the calculator interface.
MDAL now supports 3 drivers for storing results, so user must be able to choose appropriate driver and dataset group name (some drivers store multiple groups to 1 file)
2019-12-06 18:27:28 +01:00
Nyall Dawson
61903a766a Fix some build warnings, clazy warnings 2019-12-06 08:48:40 +10:00
Peter Petrik
7df4ec7f4a fix issues from 2nd review 2019-12-05 07:08:50 +01:00
Peter Petrik
d1dd68ae11 remove averaging settings class and expore averaging methods outside qgis core 2019-12-05 07:08:50 +01:00
Peter Petrik
a30bda6c3d [FEATURE] Initial implementation of QEP 158: Support of 3d stacked meshes in QGIS.
Stacked 3D meshes store values on the volumes that are regularly stacked over base 2d mesh. User can select various 3d to 2d averaging/interpolation method to convert values on volumes (3d) to values on faces (2d) that can be shown in mesh layer. This is achieved by new tab in the mesh layer properties dialog.
2019-12-05 07:08:50 +01:00
Alessandro Pasotti
df2bdf9c1a Handle the coordinate tranform context in the layer ctor
Also use the context when read/write XML by passing it
in the R/W context
2019-04-17 10:06:41 +10:00
Nyall Dawson
b6d66becab Sipify 2019-02-27 09:41:11 +10:00
Peter Petrik
cd9a84e11c [feature] [mesh] Mesh Calculator
Similarly to raster calculator, mesh calculator can take dataset groups from current mesh layer and
combine them with various aritmentic/logical operators to new dataset group.
2019-01-14 12:32:36 +01:00
Peter Petrik
11f10c10c2 add documentation 2018-12-07 15:54:16 +01:00
Peter Petrik
fa1ddb1f7a fix spellcheck 2018-12-07 15:54:16 +01:00
Peter Petrik
28071728f1 [mesh] use MDAL 0.1.0 API in QGIS. Allows lazy loading of formats and effective transfer of data
introduce MeshDataBlock

use mesh block in rendering

calculate magnitude

use new mesh API

fix bug for memory layer

fix SIP, sip is unable to work with qvector<qgsmeshvertex>

fix tests

implement new MDAL min/max api

improve mesh documentation

fix travis build
2018-12-07 15:54:16 +01:00
Denis Rouzaud
f27a5043bb remove useless includes 2018-10-09 11:48:33 -08:00
Peter Petrik
f0ede773c2 [mesh] [feature] allow to choose different vector and scalar dataset 2018-09-03 19:41:07 +10:00
Martin Dobias
26631b3d44 Rename faceIsActive() to isFaceActive() 2018-08-20 11:56:27 +02:00
Peter Petrik
419ec1f736 [mesh] fix bug in rendering datasets with inactive faces 2018-08-20 11:56:27 +02:00
Martin Dobias
767a7b0f5c Travis fixes 2018-08-14 19:53:27 +02:00
Martin Dobias
9fc2e3e148 Make scalar/vector rendering settings per dataset group
Until now there was just one scalar and vector configuration
for a mesh layer. It is however most useful to have different
rendering settings for each dataset group (quantity).
2018-08-14 16:42:13 +02:00
Martin Dobias
d093455725 Save extra datasets of mesh layers in project files
Some formats like .2dm only contain definition of mesh structure,
in order to show some data users need to add extra files with data
on that mesh. Until now the extra datasets were not persisted.
2018-08-14 16:30:09 +02:00
Peter Petrik
271bab1756 introduce DataType for mesh dataset data definition and small fixes 2018-08-10 14:40:46 +02:00
Peter Petrik
c79e1d0601 [mesh] [feature] add function to identify value on the point 2018-08-09 16:45:20 +02:00
Peter Petrik
21613cd132 use MDAL Groups instead of guessing them from dataset names 2018-07-19 11:30:52 +02:00
Peter Petrik
aeea184890 [mesh] [feature] App widgets for styling mesh layers
- Adding datasets to mesh layer from properties panel
- Information and source panel in properties panel
- Selection of active dataset (properties or styling panel)
- Styling of contours/scalars (properties or styling panel)
- Styling of mesh frame (properties or styling panel)
- Styling of vector arrows (properties or styling panel)
2018-06-26 08:50:19 +02:00
Nyall Dawson
2ed144ac59 Apply clang-tidy readability-avoid-const-params-in-decls fixit
Checks whether a function declaration has parameters that are
top level const.

const values in declarations do not affect the signature of a
function, so they should not be put there.
2018-06-05 10:19:13 +10:00
Nyall Dawson
f8bc97030b Remove extra space added before first line of docstring 2018-05-28 08:22:11 +10:00
Nyall Dawson
44630b47ed Add QgsDataProvider::ProviderOptions struct to constructors
for data providers

Allows a way to pass generic settings to providers, e.g.
passing a datum transform context for use in provider's
constructors.
2018-05-25 11:40:57 +10:00
Nyall Dawson
bb995202fd Fix more broken links 2018-05-25 11:16:18 +10:00
Peter Petrik
882d8ed79b tiny doc change 2018-05-24 08:16:11 +02:00
Peter Petrik
81bf510c09 fix typo 2018-05-22 18:59:06 +02:00
Peter Petrik
c75876938b fix docs 2018-05-22 14:35:10 +02:00
Peter Petrik
33390123e3 various small fixes from review 2018-05-22 14:32:20 +02:00
Martin Dobias
94f56b61a8 Build/test fixes 2018-05-16 17:26:59 -04:00
Peter Petrik
3fc99c04c1 code cleanup 2018-05-16 17:02:35 +02:00
Peter Petrik
aea3dccea7 [FEATURE] Rendering of vector data on mesh layers
Rudimentary support of rendering of vector data (e.g. velocity) on mesh map layers.
Rendering can be adjusted by QgsMeshRenderer*Settings. Only in Python
API, no GUI widgets for styling present.
2018-05-16 12:56:35 +02:00
Martin Dobias
9296528822 [FEATURE] Rendering of scalar data on mesh layers
Rudimentary support for rendering of scalar data (e.g. water depth)
on mesh map layers.
2018-05-16 12:47:57 +02:00
Peter Petrik
3154102aa6 [FEATURE] Scalar/vector data in mesh data providers
Reading and processing scalar (e.g. water depth) and vector (e.g.
velocity) data from mesh data providers (e.g. MDAL)
2018-05-16 12:47:28 +02:00
Denis Rouzaud
7df2593caf move auto generated sip file in dedicated folder 2018-05-14 10:23:37 -04:00