Signed-off-by: Marco Bernasocchi <marco@opengis.ch>
remove unused mServerSettings
Signed-off-by: Marco Bernasocchi <marco@opengis.ch>
Fix typo and code style
Signed-off-by: Marco Bernasocchi <marco@opengis.ch>
Fix test
Fix test
Previously, when marker or hash lines were rendered using interval
or center point place placement, the symbol angles were determined
by taking the exact line orientation at the position of the symbol.
This often leads to undesirable rendering effects, where little
jaggies or corners in lines which occur at the position of the
symbol cause the marker or hash line to be oriented at a very
different angle to what the eye expects to see.
With this new option, the angle is instead calculated by averaging
the line over a specified distance either side of the symbol. E.g.
averaging the line angle over 4mm means we take the points along
the line 2mm from either side of the symbol placement, and use these
instead to calculate the line angle for that symbol. This has the
effect of smoothing (or removing) any tiny local deviations from
the overall line direction, resulting in much nicer visual
orientation of marker or hash lines.
Like all symbol settings, the average angle smoothing distance
can be set using mm/pixels/map units/etc, and supports data-defined
values.
Closed rings also correctly consider wrapping around these average
angles from the start/end vertex.
(Sponsored by an anonymous corporate backer)
This logic is too complex and fragile -- we should drop support for proj 6.0
as soon as we can, so that we can the inbuilt handling which
is enabled for proj >= 6.1 only.
If the group (or the root) has any queryable child, it is flagged as queryable
Also fixes an issue with json enconding with rasters.
Fixes#21697
Funded by: Kanton Zug
This line symbol type is designed to replicate the ArcGIS Hash Line
symbol layer type. It allows for a repeating line segment to be
drawn over the length of a feature, with a line-sub symbol used
to render each individual segment.
To reduce code duplication, this is heavily based off the current
line marker symbol layer, since the functionality is almost
identical (draw some sub symbol at some interval along a line).
Accordingly, I've split off QgsMarkerLineSymbolLayer to move
as much of the common functionality as possible to a new abstract
base class, so that only the actual marker/line segment rendering
occurs in the marker line/hash line subclasses.
This also gives the hash line all the existing placement options
permissible for marker lines -- e.g. first/last vertex, mid points,
regular intervals, etc.
The hash line length and angle can have data defined overrides,
which are evaluated per-line segment, allowing for the hash line
to change size and angle over the length of a single rendered
feature.
nearest neighbor search based on QgsGeometry to QgsGeometries
Previously only point - geometry was possible. But with this
change, you can safely and accurately use QgsSpatialIndex
to determine the nearest neighbours between any types of
geometries.
In QGIS 3.4, Selection can be printed in Image output and not in PDF or SVG output.
A fix has been done 2752f83 to fix inconsistent use of layout render context flags, and draw selection is activated with a flag.
to declare a test as flaky:
* for cpp, use
```
if ( !QgsTest::runFlakyTests() )
QSKIP( "This test is disabled on Travis CI environment" );
```
* for Python, you can use `RUN_FLAKY_TEST` environment variable