Using this renderer no symbol will be drawn for features, but labeling,
diagrams and other non-symbol parts will still be shown.
Selections can still be made on the layer in the canvas and selected
features will be rendered with a default symbol. Features being edited
will also be shown.
This is intended as a handy shortcut for layers which you only want
to show labels or diagrams for, and avoids the need to render
symbols with totally transparent fill/border to achieve this.
(fix#12131)
Failure is odd.
c = r.stops()[0].color
self.assertEqual(c, QColor(100, 100, 40))
fails, but
s = r.stops()
self.assertEqual(s[0].color, QColor(100, 100, 40))
passes!
Avoids the frustrating situation where changes to a symbol in the
categorised renderer are lost when the layer properties window
is reopened
Also improve docs and fix a leak in the Python bindings
copy/= operators or making them private
This revealed (and fixes) some issues, including a potential crash
using server access control (refs #13919), and a potential crash with
diagrams
* Move height and angle expressions for 2.5D renderer to layer
* Apply color based on main symbol color
This makes the transition to other renderers easy.
Fixes#14132
This adds a configuration interface and renderer that makes it easy to
put all the pieces together which are required to get a 2.5D effect.
It allow for configuring some of the styling and is meant to create an
easy-to-use setup.
Since every part of the system is built around QGIS' internal rendering
and symbology engine, there is much to fine tune. To get all the
possibilities, just change the renderer to a graduated, categorized or
single symbol renderer upon creation and you will find full access to
improve the style to your needs.
Funded by
* Regional Council of Picardy
* ADUGA
* Ville de Nyon
* Wetu GIT cc
During rendering, two new variables will be available:
* `geometry_part_count`
* `geometry_part_num` (1-based index)
Useful to apply different styles to different parts of multipart
features
Now all classes and members are either exposed to bindings or marked
as "not available in Python bindings" in the docs.
Drop test thresholds to 0. Now it should be much easier to determine
what missing members have been added which are causing test
failures.