2484 Commits

Author SHA1 Message Date
Nyall Dawson
264bd51594 [layouts] Add API to set item based clipping region on maps
Allows using shape or polygon layout items to set the overall shape
of a layout map item's contents
2020-07-28 15:12:04 +10:00
Nyall Dawson
915615aec4 [layouts][api] Add API to allow map items to be clipped (take their shape from)
other layout items which provide clipping paths

Opens the door for non-rectangular layout maps
2020-07-28 15:12:04 +10:00
Nyall Dawson
77badc0097 QgsLayoutItemShape can provide clip paths 2020-07-28 15:12:04 +10:00
Nyall Dawson
aa0b36b27d QgsLayoutItemPolygon can provide a clip path 2020-07-28 15:12:04 +10:00
Nyall Dawson
2b283951be Add api for layout items to create a clipping path 2020-07-28 15:12:04 +10:00
NEDJIMAbelgacem
a656da3b75 Moved finding geometries from parseVectorLayerEntity to each symbol class 2020-07-28 01:45:11 +01:00
Alessandro Pasotti
fb02ab9fa4 Virtual layers store subset string
Fixes #26189
2020-07-27 16:33:07 +02:00
Nyall Dawson
51d8ad75c5 Don't modify text format paint effects in place
Avoids race conditions when multiple threads are rendering the same
text format which contains paint effects

Fixes #37938
2020-07-27 07:36:50 +10:00
Nyall Dawson
9b19e069b3 Allow symbol and color ramp visitors the ability to edit symbols/color ramps they visit 2020-07-26 09:56:46 +10: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
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
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
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
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
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
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
80627eb740 Add QgsSourceCache 2020-07-18 13:01:18 +07: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
Alessandro Pasotti
d8a45f92a3 New table dialog menu provider 2020-07-14 15:25:20 +02:00
Alessandro Pasotti
d8a7531dc9 Connections API: add nativeTypes method 2020-07-14 15:25:20 +02:00
Alessandro Pasotti
56613de7d1
Merge pull request #37760 from elpaso/browser-expose-fields
Browser expose fields
2020-07-14 07:44:46 +02:00
Nyall Dawson
1878f2eb3b [layouts] Add API to retrieve an expression context scope for a particular
table cell, add backend support for QgsProperty based values in a manual
text table
2020-07-14 11:28:23 +10:00
Nyall Dawson
761f594cca Improve api and UX for handling cell text formatting in manual tables,
by removing the checkbox for overridding text format and using the
"not set" state from the font button instead
2020-07-14 11:23:33 +10:00
Nyall Dawson
ac5a7226ee Add equality operator for QgsTextFormat 2020-07-14 11:23:33 +10:00
Nyall Dawson
dfb6223390 Add equality operators to QgsPropertyCollection 2020-07-14 11:23:33 +10:00
Nyall Dawson
9bad5578cf Equality operator for QgsTextShadowSettings 2020-07-14 11:23:33 +10:00
Nyall Dawson
52d7d1886a Add an equality operator for QgsTextMaskSettings 2020-07-14 11:23:33 +10:00
Nyall Dawson
305fa330bd Add equality operator for QgsTextBufferSettings 2020-07-14 11:23:33 +10:00
Nyall Dawson
7547dbd464 Equality operator for QgsTextBackgroundSettings 2020-07-14 11:23:33 +10:00
Nyall Dawson
c575b827bf Add an invalid state to QgsTextFormat
Allows determining whether the QgsTextFormat is a default constructed
object, which should represent a not set/default settings value.
2020-07-14 11:23:33 +10:00
Denis Rouzaud
1c9211a2d9 remove scoped enum 2020-07-13 15:52:12 +02:00
Denis Rouzaud
56bfeac158 fix build with Qt < 5.12 2020-07-13 15:16:18 +02:00