with "on inner vertices"
This new mode places the symbols on all inner vertices (ie all
vertices except the first or last). (We can safely do this now
that its easy for users to also set the symbols to show on
first/last vertex by clicking those checkboxes too!)
The motivation here is that when the "Vertex" mode puts the
symbols on the first/last vertex as well as inner vertices,
it's basically impossible to style a line with a different
marker on the first/last vertex to the rest of the line's
vertices. (The best you can get is just hiding the unwanted
first/last vertex by overlaying a second symbol layer on
the first/last vertices with a larger symbol)
Sponsored by North Road, thanks to SLYR
Makes it considerably quicker to create a marker line with the
markers on the first AND last vertex, amongst other things...
Fixes#18433
Sponsored by North Road, thanks to SLYR
gradient ramp
Some gradients will pass through murky grey mid-tones when interpolating
using red/green/blue channels. Interpolating via
hue/saturation/lightness/value channels can avoid these desaturated
mid tones, resulting in more visually pleasing gradients.
The color spec can be set per stop in a multi-stop gradient, and there's
also an option to control the direction which interpolation should
follow for the Hue component of a HSL/HSV color spec interpolation.
Sponsored by North Road, thanks to SLYR
Useful when you've built a graph and want to perform multiple
different analysis on it after excluding routes without
having to rebuild the whole graph again
Eg. find the shortest path between two vertices, then remove all
these edge from this path and repeat to try to find the second-shortest
path which doesn't use any of the same edges from the shortest
path
Allows text to be horizontally stretched or condensed by a %
factor. Handy for tweaking the widths of fonts to fit a bit
of extra text into labels (when used sparingly, that is...
you can certainly abuse font stretching with some horrendous
results!)
Requires Qt 6.3+ or KDE's 5.15 fork
Thanks for KDAB for fixing the upstream issues blocking this!
Adds two new capitalization styles for labels and text symbols:
- Small Caps: Renders lowercase characters as small caps
- All Small Caps: Renders all characters as small caps (regardless
of their original case)
Requires Qt 6.3+, or Qt 5.15 using KDE's fork and the cmake
HAS_KDE_QT5_SMALL_CAPS_FIX switch defined during build.
which is opt in, and consistently respect this for better quality
raster image markers, svg/raster fills when set
We don't set this by default (keep things light for server), but
do use it in the map canvas and layout exports whenever antialiasing
is enabled.
The method returns TRUE if the layer is a query/sql layer.
This allows to selectively show the "Update SQL Layer..." menu
entry in the legend.
Partial fix for #45796
We no longer require paint engine hack for Qt 6.3 or KDE's fork, which
now means that pattern brushes and gradients are correctly exported
to PDF without forced rasterization.
Results in higher quality PDF outputs with smaller file sizes
Thanks to KDAB for the fix!
These are recommended for use instead of the existing force_rhr
function, due to the variability in definition of the "right hand
rule" between different software applications. Using an explicit
force_polygon_cw/ccw function removes user confusion when the
results vary between different applications.
This returns a new multilinestring geometry which represents the
input geometry with the dash pattern applied to the lines or rings
of the input geometry.
Options are available to set rules for the start/end of the pattern,
e.g. ending on a full dash or gap, or half dash or gap.
Sponsored by North Road, thanks to SLYR