17796 Commits

Author SHA1 Message Date
NEDJIMAbelgacem
a656da3b75 Moved finding geometries from parseVectorLayerEntity to each symbol class 2020-07-28 01:45:11 +01:00
NEDJIMAbelgacem
860be14c32 add SIP_FACTO to QgsAbstractMaterialSettings::toExportParameters 2020-07-25 21:51:59 +01:00
nirvn
aa05f7641a [processing] Fix python error when attempting to re-open generate XYZ tiles algorithm from the history dialog 2020-07-24 13:33:11 +07:00
Nyall Dawson
f2e4ac606e [3d] Abstract out material settings
Opens the possibilities for non-phong based materials for 3d symbols
2020-07-24 16:28:18 +10:00
Nyall Dawson
a345ae94a5
Merge pull request #37929 from nyalldawson/fix_37912_refactor_fields
Fix expression previews in Refactor Fields and Aggregate algorithms
2020-07-24 16:26:20 +10:00
Nyall Dawson
ea3eb7220c Dox 2020-07-24 12:58:55 +10:00
Nyall Dawson
e2a370fe3e Avoid repeating points when appending lines 2020-07-24 12:58:55 +10:00
Nyall Dawson
75635dbf0b [FEATURE][symbology] Add options to dynamically tweak dash pattern
in simple line symbol layers

New options are:

- Align dash pattern to line length: If checked, the dash pattern lengths
will be subtely adjusted in order to ensure that when a line is rendered
it will end with a complete dash element, instead of a gap element or
partial dash element

- Tweak dash pattern at sharp corners: If checked, this option dynamically
adjusts the dash pattern placement so that sharp corners are represented
by a full dash element coming into and out of the sharp corner. It's designed
to better represent the underlying geometry while rendering dashed lines,
especially for jagged lines
2020-07-24 12:58:55 +10:00
Nyall Dawson
0641f3f8b8 Add utility function to detect sharp corners 2020-07-24 12:58:55 +10:00
Nyall Dawson
ca5901b336 Add utility function to slice a QPolygonF linestring 2020-07-24 12:58:55 +10:00
Nyall Dawson
cc0cfbe02b [processing] Also fix expression preview results in Aggregate algorithm 2020-07-24 10:26:17 +10:00
Nyall Dawson
69f73e3a74 [processing] When running in toolbox mode, set the source layer for
the field expression widgets in the refactor fields widget so that
the expression editor can generate feature based previews

Fixes #37912
2020-07-24 10:26:17 +10:00
Vincent Cloarec
de68f83cc3
Virtual dataset groups for mesh layer (#37605)
[FEATURE] Introduces mesh virtual datasets

With the mesh calculator the user can choose to create those "virtual" dataset groups that will be added to the layer. Then, for these dataset groups, values are not stored in memory but each dataset is calculated when needed whit the formula entered in the mesh calculator.

Those virtual dataset groups are saved with the project.

If needed, the user can remove them or can persist them on files to make them persistent.

Co-authored-by: Étienne Trimaille <gustrimaille@yahoo.fr>
2020-07-23 07:39:28 +02:00
Nyall Dawson
ddb67fd46a Fix dox 2020-07-23 07:53:20 +10:00
Nyall Dawson
368a58bf5e Base class for 3d symbol widgets 2020-07-23 07:53:20 +10:00
Nyall Dawson
c3837359d6 Move feature handler creation responsibility to 3d symbol registry 2020-07-23 07:53:20 +10:00
Nyall Dawson
80e5d16511 Move method to create default 3d symbol for a geometry type to 3d symbol registry 2020-07-23 07:53:20 +10:00
Nyall Dawson
0528fe284c Populate 3D symbol registry, and use to create symbols 2020-07-23 07:53:20 +10:00
Nyall Dawson
c7b6a115df Better initialization of 3d framework, usable outside of app 2020-07-23 07:53:20 +10:00
Nyall Dawson
a34eabd1fb [api] Add a proper registry for 3D symbol types 2020-07-23 07:53:20 +10:00
Nyall Dawson
f60b79fcea Move QgsAbstract3DSymbol to core 2020-07-23 07:53:20 +10:00
Nyall Dawson
aa93872f0d Provide more descriptive error messages when converting a field value
fails

And fix Python exception handling in QgsField::convertCompatible to
avoid Python "returned an object with the error set" error message
and instead just use the proper ValueError exception with a descriptive
exception message
2020-07-23 07:52:28 +10:00
Nyall Dawson
3eec9a47f0 Add a lastError() getter to QgsFeatureSink for retrieving the last error
encountered by the sink (e.g. after adding a feature fails)
2020-07-23 07:51:58 +10:00
nirvn
8c61a803fc [FEATURE][processing] Add a save features to file algorithm 2020-07-22 19:11:50 +07:00
Dmitry Shachnev
d0c4e0de9d Use SIP_INCLUDE_DIR and SIP_MODULE_DIR only with SIP v4 2020-07-21 21:21:21 +03:00
Peter Petrik
d9f18ccb9c
Fix spelling (#37849)
fix the spelling errors
2020-07-21 12:51:48 +02:00
Dmitry Shachnev
7e93859dfd Replace deprecated sipTransferBreak with sipTransferTo 2020-07-21 13:18:40 +10:00
Dmitry Shachnev
d9db0d5159 Remove use of deprecated sipCanConvertToEnum
sipConvertToEnum will raise an exception itself if the type is wrong.
2020-07-21 13:18:40 +10:00
Dmitry Shachnev
ae8b427fe9 Replace deprecated sipMappedType with sipTypeDef 2020-07-21 13:18:40 +10:00
Harrissou Sant-anna
d4e60173bc Fix after review 2020-07-21 10:13:45 +10:00
Harrissou Sant-anna
140425b1e3 Fix file formatting for better output rendering 2020-07-21 10:13:45 +10:00
Harrissou Sant-anna
5c83cd07cc Move some cpp code samples to python 2020-07-21 10:13:45 +10:00
Dan Minor
bfc0925bbf
Call saveSettings from QgsCompoundColorWidget::hideEvent
We currently call saveSettings from the QgsCompoundColorWidget destructor.
Since we restore the custom colors when the constructor runs, any changes made
will be lost if a second QgsCompoundColorWidget is created before the first is
destroyed. This adds a hideEvent handler, and saves the settings from there.

Fixes #37749.
2020-07-21 09:56:24 +10:00
Andrea Giudiceandrea
33fe1eac27 Fix invalid randompointsonlines algorithm ID in menus.py
Fix invalid algorithm ID for menu: qgis:randompointsonlines
The valid algorithm ID is native:randompointsonlines
2020-07-21 09:07:51 +10:00
Alessandro Pasotti
3af038f861
Merge pull request #37832 from elpaso/browser-create-table
Browser create database table
2020-07-18 17:18:16 +02:00
nirvn
3b249d12ff [FEATURE][3d] Enable embedded and remote 3D models for 3D point symbols 2020-07-18 13:01:18 +07:00
nirvn
80627eb740 Add QgsSourceCache 2020-07-18 13:01:18 +07:00
Alessandro Pasotti
ecb5f4b31b New notify on gui dataitems 2020-07-16 19:05:48 +02:00
Matthias Kuhn
e91abdc23f
Merge pull request #37769 from m-kuhn/fix_snapping_scope_missing
Cache snapping results in feature dialog for subsequent recalculation
2020-07-16 15:39:06 +02:00
Matthias Kuhn
986df3b8a7
Merge pull request #37830 from suricactus/fix_paste
Fix pasting features - only a single insert operation, no unnecessary (failing) updates
2020-07-16 13:54:07 +02:00
Matthias Kuhn
66c82f325a Improved docstring 2020-07-16 13:16:43 +02:00
Alessandro Pasotti
4473b2cc77 New data item for browser connection roots
in order to distinguish it from schema and layer collections.
2020-07-16 12:22:20 +02:00
Alessandro Pasotti
b1c371af58 Add static nativeTypes and remove ugly workaround 2020-07-16 10:49:10 +02:00
Alessandro Pasotti
1ac91c1f2e Add geom col capabilities and create spatial index 2020-07-16 09:40:18 +02:00
Nyall Dawson
88583210a2 Minor cleanup: move guts of oriented minimum bounding box calculation to QgsInternalGeometryEngine 2020-07-16 08:44:51 +10:00
Nyall Dawson
573ace14bf [3d][feature] Add option to show light source origins
If enabled, shows a sphere at light source origins, allowing easier repositioning
and placement of light sources relative to the scene contents

Fixes #37726
2020-07-16 07:52:12 +10:00
Alessandro Pasotti
07adc6cef9 Doxy 2020-07-15 18:47:47 +02:00
Alessandro Pasotti
f0b43aa2b7 Browser table: skip fields conversion + UX & tests
The reason for skipConvertFields is that the providers
are not smart enough to recognize if a field is alredy
compatible and they narrow down all fields anyway
to stay on the safe side.

Fixing all providers would be nice but it's definitely
out of scope for this PR.
2020-07-15 16:51:00 +02:00
Ivan Ivanov
c192f012d9 Sipify 2020-07-15 15:30:45 +03:00
Nyall Dawson
bf7d746ae4 [api] Add a Qgs3D singleton object, designed to collect other singleton-ish
objects in a central place

Copying the pattern setup by the QgsGui singleton container
2020-07-15 16:10:25 +10:00