3164 Commits

Author SHA1 Message Date
Germán Carrillo
b0ddb95a4a [test] Attribute forms properties: don't lose the fix #59654 (implement it with the model/view approach, distinguishing when the relation is in the relation manager and when it's not); add tests for 2 scenarios: invalid relation that is in the relation manager and invalid relation that is only in Form Layout but not in relation manager 2025-05-05 11:26:54 -05:00
Nyall Dawson
f1b8682e36 Improve API for exporting to SLD
Deprecate old methods and make methods always take QgsSldExportContext.
Add capacity to QgsSldExportContext to collect export errors and
warnings.

The old API had no way to reliably report errors/warnings during
export to users.
2025-05-04 17:55:25 +10:00
Nyall Dawson
6b40530fd4 Test masks 2025-04-24 16:00:08 +10:00
Nyall Dawson
931e681b89 Fix visible gaps in between xyz tiles
In some circumstances there can be a visible <=2 pixel-wide gap
between adjacent tiles in xyz layers

Rework the image destination rect calculation to an integer
based calculation, as we'll always be drawing the tiles using
a painter with a pixel-based image device, and ensure that
the destination rect is always expanded to the nearest pixel
(instead of shrunk)
2025-04-24 16:00:08 +10:00
Benoit D.-M. - oslandia
c892205a18
Debug texture render view (#61367)
* feat(3d/renderView): extract texture preview render pass to dedicated files

* fix(3d): replace QgsPreviewQuad by QgsRenderPassQuad

As they are quite the same, we remove QgsPreviewQuad and replace all usage by QgsRenderPassQuad

* fixup! feat(3d/renderView): extract texture preview render pass to dedicated files

* fix(3D/renderview): complete doc on registerRenderView

* fixup! fix(3D/renderview): complete doc on registerRenderView

* fixup! feat(3d/renderView): extract texture preview render pass to dedicated files

* fixup! feat(3d/renderView): extract texture preview render pass to dedicated files

* fix(framegraph): simplify if with ternary operator

* fix(3d): cleanup some extra headers

* fixup! feat(3d/renderView): extract texture preview render pass to dedicated files
2025-04-23 14:15:39 +02:00
bdm-oslandia
1f0328cff6 fix(test): add expected results for PyQgsWebEnginePage test to ensure Qt6 compatibility 2025-04-23 20:43:26 +10:00
Nyall Dawson
c2ee323793 [feature] Add labeling setting to prevent duplicate labels within xx mm
Improves the appearance of labels in situations like road networks,
where things like dual carriageways, service roads, etc can result
in many labels of the exact same text appearing close to each other.

When active, removes any labels with the exact same text (case
sensitive!) which are closer then this minimum distance.

The setting applies across layers, so duplicate text from ANY
layer will be considered.
2025-04-22 11:45:25 +10:00
Nyall Dawson
4d98f21d67 [feature] Add 'margin around labels' setting for labeling
Allows setting a margin around a layer's labels, which prevents
other labels from being placed closer than this margin distance
to the layer's labels.
2025-04-22 11:45:25 +10:00
bdm-oslandia
76549e4eb1 fix(testdata): replace hardcoded path "/home/.../file.XXX" in qgis_server/*.qgs files by "./file.XXX" 2025-04-18 18:13:12 +02:00
Loïc Bartoletti
176101a3ac
Merge branch 'master' into checker_fix_duplicatenodes 2025-04-17 17:16:59 +02:00
Loïc Bartoletti
f3abfe198a
Merge branch 'master' into checker_fix_multipart 2025-04-17 17:12:38 +02:00
Loïc Bartoletti
7fa0c809fe
Merge branch 'master' into checker_fix_overlap 2025-04-17 17:09:00 +02:00
Loïc Bartoletti
01e3018e7e
Merge branch 'master' into checker_fix_self_intersection 2025-04-17 17:06:25 +02:00
Loïc Bartoletti
9587efdcae
Merge branch 'master' into checker_fix_delete_features 2025-04-17 17:03:23 +02:00
Loïc Bartoletti
c930989aa7
Merge pull request #61507 from Djedouas/checker_fix_gap
Processing: Add Fix Geometry algorithm and test: Gap
2025-04-17 17:02:17 +02:00
Jacky Volpes
cc010065ac Processing: Add Fix Geometry algorithm and test: Duplicate Nodes 2025-04-16 15:39:55 +02:00
Jacky Volpes
718d0ca7df Processing: Add Fix Geometry algorithm and test: Multipart 2025-04-16 15:39:17 +02:00
Jacky Volpes
e4bd5b9c32 Processing: Add Fix Geometry algorithm and test: Self intersection 2025-04-16 15:38:04 +02:00
Jacky Volpes
9551e993e8 Processing: Add Fix Geometry Algorithm and test: Overlap 2025-04-16 14:52:47 +02:00
Jacky Volpes
1a27563996 Processing: Add Fix Geometry algorithm and test: Gap 2025-04-16 14:51:19 +02:00
Jacky Volpes
25bf992382 Processing: Add Fix Geometry algorithm and test: delete features 2025-04-16 14:39:35 +02:00
Julien Cabieces
c2b3c5a42f fix(PostgresRole): Use session role for ALL requests
Adds session_role to the connection information so:
- It's automatically used for every request. The old system was only
working for provider requests and was error prone because it was easy
to forget to set the session role before the request.
- Avoid setting/resetting role request if different request sender
were sharing the same connection information to the exception of the
session role.

Fixes #58516
2025-04-16 13:55:59 +02:00
Jean Felder
0d59de24e7 tests/relates_data: Do not test invalid multipolygon
The removed MultiPolygon are invalid. These tests do not return the
same result depending on the GEOS version. They should not be part of
the test suite as stated upstream.

See: https://github.com/libgeos/geos/issues/1147
2025-04-15 17:51:13 +10:00
Jean Felder
6cc905b569 tests/relates_data: Remove duplicated lines
Some lines were duplicated 2 or 3 times.
2025-04-15 17:51:13 +10:00
MoritzMoreira
50c220beba added regression test added Literal tag to marker line sld file in testdata and regression test function 2025-04-10 12:37:41 +02:00
Julien Cabieces
aa415ac2bd
Merge pull request #61196 from Djedouas/fix-61087
QgsFeaturePool: back to a write locker type
2025-04-09 08:43:58 +02:00
Nyall Dawson
61009bdf95 [feature] Add auto-wrap after setting for layout legends
Allows legend text to be automatically wrapped after a set
line length (in millimeters).

This can prevent very wide auto-generated legends.

Sponsored by North Road, thanks to SLYR
2025-04-09 13:09:36 +10:00
Nyall Dawson
c3db1be13d Update test masks 2025-04-09 13:09:36 +10:00
Julien Cabieces
68dd8200c1
Merge pull request #61195 from troopa81/feat_groupwmsdata
[Server] Add server properties on layer tree group
2025-04-07 14:01:35 +02:00
Julien Cabieces
727976c7ee
Merge pull request #61331 from benoitdm-oslandia/fix/pg_test_service
Fix/pg test service
2025-04-07 10:07:42 +02:00
bdm-oslandia
fceed01bae feat(3d/renderview): extract depth to QgsDepthRenderView and QgsDepthEntity 2025-04-05 16:49:37 +02:00
Jan Caha
d4729dfa8c
when creating QgsMeshRendererScalarSettings first setup minimum maximum (which updates shader) and then update shader to keep correct 2025-04-04 10:05:24 +03:00
bdm-oslandia
d30b3409bf fix(test): replace access to pg via service insteadof port (accesscontrol) 2025-04-03 16:18:16 +02:00
bdm-oslandia
56f26431f8 fix(test): replace access to pg via service insteadof port 2025-04-03 16:18:16 +02:00
Martin Dobias
81d0f571ce updated test image 2025-04-01 10:26:27 +10:00
Martin Dobias
fa5772e161 updated test image 2025-04-01 10:26:27 +10:00
Jacky Volpes
64e64f9031 fix(qgsfeaturepool): add multithreaded geometry checker test
This test tests the geometry checker method used in the geometry checker
plugin which launches the checks in parallel,
QgsGeometryChecker::execute().

We use a relatively big layer to be maximize chances of triggering
threading issues and be as close as possible to a real user case.

Related to #61087
2025-03-31 11:25:15 +02:00
Mathieu Pellerin
d1c8ee2cf8 [symbology] Fix font marker not rotating alongside map when data-defined rotation is enabled 2025-03-28 20:43:17 +07:00
bdm-oslandia
e69c09eb29 feat(3d/renderview): extract forward render view to dedicated renderview class 2025-03-27 13:09:00 +01:00
bdm-oslandia
da6ff24f23 feat(3d/renderView): extract shadow renderview to dedicated renderview class
* move shadow setting updates from qgs3dmapscene into render view
* remove useless class member mShadowRenderTargetOutput
2025-03-27 13:09:00 +01:00
Julien Cabieces
6a31089cec refactor(GroupWMSData): Use server properties to write WMS getCap 2025-03-25 17:48:31 +01:00
Jean Felder
21dfcd261d qgslayoutitemelevationprofile: Add support for subsections indicator
This adds support to display vertices lines over the profile graph to
display indicator at the location of the curve's vertices.

This is achieved with mainly 2 changes:
- `setSubsectionsSymbol()` allows to set the line symbol of the
vertical lines
- Call `renderSubsectionsIndicator` on the `QgsProfilePlotRenderer`
2025-03-25 09:47:50 +10:00
Jean Felder
030c04c9ea qgsprofilerenderer: Add support for subsections indicator
This adds support to display vertices lines over the profile graph to
display indicator at the location of the curve's vertices.

This is achieved with mainly 2 changes:
- `QgsProfilePlotRenderer::setSubsectionsSymbol()` allows to set the
line symbol of the vertical lines
- `renderSubsectionsIndicator` generates and renders the vertical
lines. It is called by `QgsProfilePlotRenderer::renderToImage()`.
2025-03-25 09:47:50 +10:00
Martin Dobias
b3aba853a9 fix second 4978 control image 2025-03-24 10:29:33 +01:00
Martin Dobias
39327a6874 add test image for qt6 2025-03-24 10:29:33 +01:00
Martin Dobias
3b9c248720 fix tests for 4978 rendering
updated the expected images because the terrain based
camera controller no longer applies to globe views
2025-03-24 10:29:33 +01:00
Jean Felder
2303a8193c testqgs3drendering: Disable opacity for the polygons clipping test
This will make it easier to test enabling/disabling clipping multiple
times with the other reference image.
2025-03-24 07:29:49 +10:00
Germap
2609f5e8e0
[fix] Make stacked diagrams behave as expected with horizontal fixed-size stacked bars (#61082) 2025-03-21 15:14:09 +07:00
Nyall Dawson
1f57723e3c Add test masks 2025-03-21 09:48:17 +10:00
Nyall Dawson
8e5b868432 Add test mask for qt 6 rendering
This svg is actually ONLY correctly rendered on recent qt 6 versions.
But at the rendered size, the actual image diff is quite small. So
just use a mask to accept either the (not quite right) qt 5 render
or the (right) qt 6 render.
2025-03-14 11:19:38 +10:00