87641 Commits

Author SHA1 Message Date
Mathieu Pellerin
917d94e5d4 [browsers] Set a tile pixel ratio of 96 DPI for the OpenStreetMap layer shipped in QGIS to avoid large number of tiles fetched when inserting a map into a 300 DPI layout 2024-09-05 17:42:47 +07:00
Mathieu Pellerin
20d499cedd [browsers] Prevent users from breaching the OSMF tile usage policy when exporting
the layer to file (both via the browser panel as well as the layer tree)
2024-09-05 17:42:10 +07:00
qgis-bot
36ebb12334 auto sipify 🍺 2024-09-05 06:53:26 +00:00
Mathieu Pellerin
ef39464f8a
Merge pull request #58550 from nirvn/processing_openstreetmap_policy
[processing] Insure that processing algorithms are not used to breach the OSMF tile usage policy on bulk download
2024-09-05 13:50:20 +07:00
Björn
6aeda2a29e [metasearch] Fix missing import
fix https://github.com/qgis/QGIS/issues/47823
2024-09-05 16:49:52 +10:00
qgis-bot
bd9ecd53ad auto sipify 🍺 2024-09-04 23:22:09 +00:00
Nyall Dawson
39d11d034d Update test images following switch to flat cap based drawing 2024-09-05 09:19:02 +10:00
Nyall Dawson
a9c2edddc8 Last row/column style should apply when merged cells touch last row/col 2024-09-05 09:19:02 +10:00
Nyall Dawson
a53185387c Make it easy to copy commands from test image report 2024-09-05 09:19:02 +10:00
Nyall Dawson
4ec5290a46 [layouts] Add support merging cells in manual tables
Allows adjacent cells to be merged in layout manual table items.

From the table editor, select multiple cells in a rectangular
shape and then from the Table menu, click "Merge Selected Cells".
Merged cells can be un-merged via the "Split Selected Cells"
menu action.

Fixes #51694
2024-09-05 09:19:02 +10:00
Julien Cabieces
afc7069881
Merge pull request #58561 from troopa81/feat_fct_compat_color_object
[Expression] Make color functions compatible with color object
2024-09-04 19:03:09 +02:00
qgis-bot
b8cf79b7b4 auto sipify 🍺 2024-09-04 13:52:07 +00:00
Jean Felder
a9b5f5a1b9 qgsrectangle: Correctly Handle null case in intersects
If at least one rectangle is null, they do not intersect. However,
this does not work if one of the rectangles only has NaN coordinates.

This issue is fixed by checking if one of the rectangles `isNull` in
`QgsRectangle::intersects()`.
2024-09-04 15:48:50 +02:00
Nyall Dawson
561961a11d Fix malformed enum documentation
Fixes #50176
2024-09-04 20:34:44 +10:00
qgis-bot
440539389d auto sipify 🍺 2024-09-04 09:09:38 +00:00
Nyall Dawson
519b82183c Fix numeric format configuration in dialog mode 2024-09-04 19:06:26 +10:00
Nyall Dawson
bfb6e1cc76 Address review 2024-09-04 19:06:26 +10:00
Nyall Dawson
1eb3d82c11 Pass proper expression context on to numeric format widget 2024-09-04 19:06:26 +10:00
Nyall Dawson
995a17a0a0 Set expression context for numeric format 2024-09-04 19:06:26 +10:00
Nyall Dawson
05003ba2fa [feature] Add "Linear Referencing" symbol layer type
This new symbol layer type allows placing text labels at regular
intervals along a line (or at positions corresponding to
existing vertices). Positions can be calculated using
Cartesian distances, or interpolated from z/m values.

Functionality includes:

- Labels can be placed using fixed cartesian 2d distances,
at regular linearly interpolated spacing calculated using
the Z or M values in geometries, or at existing vertices
- Labels can show either the running total distance, or
the linearly interpolated Z/M value
- Uses text rendered to draw labels, so the full range
of functionality is available for the labels (including
buffers, shadows, etc)
- Uses the QGIS numeric format classes to format numbers
as strings, so users have full range of customisation
options for eg decimal places
- An optional "skip multiples of" setting. If set, then
labels which are a multiple of this value will be skipped
over. This allows construction of complex referencing labels,
eg where a symbol has two linear referencing symbol layers,
one set to label every 100m in a small font, skipping multiples
of 1000, and a second set to label every 1000m in a big
bold font
- Labels are rendered using an angle calculated by averaging
the linestring, so sharp tiny jaggies don't result in
unslightly label rotation
- Optionally, markers can be placed at referenced points
in the line string, using a full QGIS marker symbol (this allows
eg showing a cross-hatch at the labeled point, for a "ruler"
style line)
- Data defined control over the placement intervals, skip
multiples setting, marker visibility and average angle
calculation length

Notes:

- When using the distance-based placement or labels, the
distances are calculated using 2D only, Cartesian calculations
based on the original layer CRS. This could potentially be
extended in future to expose options for 3D Cartesian distances,
or ellipsoidal distance calculations.

Sponsored by the Swiss QGIS User Group
2024-09-04 19:06:26 +10:00
Nyall Dawson
459d1a183e Fix test failure 2024-09-04 17:55:05 +10:00
Nyall Dawson
1e026d4495 Add expression variables for layer vertical crs
Following the equivalent variables for projects, this adds:

- @layer_vertical_crs
- @layer_vertical_crs_definition
- @layer_vertical_crs_description
- @layer_vertical_crs_wkt

Which will be populated whenever a map layer has a valid
vertical CRS set
2024-09-04 17:55:05 +10:00
Mathieu Pellerin
734d1d2ebf Create a QgsMapLayerUtils::isOpenStreetMapLayer function 2024-09-04 14:13:01 +07:00
Julien Cabieces
a55451b6fc refactor(ColorExpression): Use QGSCOMPARENEAR 2024-09-04 08:53:18 +02:00
qgis-bot
d2f38a45ed auto sipify 🍺 2024-09-04 05:37:58 +00:00
Alessandro Pasotti
fac763d385
Merge pull request #58559 from elpaso/bugfix-gh52219-relation-ref-not-null-followup
Fix default AllowNotNULL for relation ref wdgt
2024-09-04 07:34:54 +02:00
Mathieu Pellerin
e3fee5d3f4 Address review 2024-09-04 11:34:51 +07:00
Mathieu Pellerin
0c1d120681 [processing] Insure that the convert map to raster algorithm is not used to conduct bulk download OSM tiles 2024-09-04 11:34:51 +07:00
Mathieu Pellerin
02f5c1fdf8 [processing] Insure that the create XYZ directory/mbtiles algorithms are not used to conduct bulk download of OSM tiles 2024-09-04 11:34:51 +07:00
Mathieu Pellerin
7bfbb1df8f [processing] Add tile creation counts to the create XYZ directory/mbtiles algorithms 2024-09-04 11:34:51 +07:00
qgis-bot
38c75784be auto sipify 🍺 2024-09-04 03:57:45 +00:00
Nyall Dawson
15c7343a97 Fix indentation of fromFunction docs 2024-09-04 13:54:39 +10:00
Nyall Dawson
cbb741fb35 Use correct subheader underline 2024-09-04 13:54:39 +10:00
Nyall Dawson
55f78cfce1 Fix QgsSvgCache parameter formatting 2024-09-04 13:54:39 +10:00
Nyall Dawson
dd01c630e7 Checkin files 2024-09-04 13:54:39 +10:00
Nyall Dawson
4db6237246 Deprecate signal which is never emitted 2024-09-04 13:54:39 +10:00
Nyall Dawson
c6233cb312 Add missing signal docs 2024-09-04 13:54:39 +10:00
Nyall Dawson
104ffa885a Cleanup docs 2024-09-04 13:54:39 +10:00
Nyall Dawson
a4723d7b97 Add missing signal docs 2024-09-04 13:54:39 +10:00
Nyall Dawson
e5c5ecb88c Add missing signal docs 2024-09-04 13:54:39 +10:00
Nyall Dawson
af6919a36c Lint 2024-09-04 13:54:39 +10:00
Nyall Dawson
2e60236344 Fix list in return value 2024-09-04 13:54:39 +10:00
Nyall Dawson
94f6e9c71b Correctly handle \param[in,out] in sipify 2024-09-04 13:54:39 +10:00
Nyall Dawson
e1a1b064b2 Fix multiline return with SIP_OUT 2024-09-04 13:54:39 +10:00
Nyall Dawson
59e1dedd04 Remove private notes, fix malformed notes 2024-09-04 13:54:39 +10:00
Nyall Dawson
a5ba59d016 Fix malformed notes 2024-09-04 13:54:39 +10:00
Nyall Dawson
0191ecbccd Add missing docs for signals 2024-09-04 13:54:39 +10:00
Nyall Dawson
98d1cbe40a Fix malformed tags 2024-09-04 13:54:39 +10:00
Nyall Dawson
1a8a072aac Fix up \param formatting 2024-09-04 13:54:39 +10:00
Nyall Dawson
60e376826d Fix tag 2024-09-04 13:54:39 +10:00