657 Commits

Author SHA1 Message Date
Blottiere Paul
e9067834eb
Merge pull request #9362 from pblottiere/legend_json
Add json format for legend
2019-03-21 09:17:42 +01:00
Blottiere Paul
2ccc3f158b Add test with big marker 2019-03-19 14:38:04 +00:00
Blottiere Paul
3f4999bd5f Add test for opacity 2019-03-19 14:38:04 +00:00
Blottiere Paul
8f76c23f1e Add unit tests 2019-03-19 14:38:04 +00:00
rldhont
547fd683d9 [Bugfix][Regression][Server] JPEG output for WMS GetPrint request has gone
In QGIS Server 2.* the WMS GetPrint request could genrate JPEG image. QGIS Server 3.4 has lost this capabilities.
```
<ServiceExceptionReport xmlns="http://www.opengis.net/ogc" version="1.3.0" capture-installed="true">
    <ServiceException code="InvalidFormat">
        Output format jpg is not supported by the GetPrint request
    </ServiceException>
</ServiceExceptionReport>
```
To fix this regression, it is necessary to accept JPEG output format.

And to avoid this regression to come back, the QGIS Server tests has been updated to accept jpg image test.
2019-03-19 10:18:49 +01:00
Blottiere Paul
cbc4270afb Add unit test for getprint and external layers 2019-03-18 08:44:25 +00:00
Blottiere Paul
216826bbf6 Add test for getmap and external layers 2019-03-18 08:44:25 +00:00
Matthias Kuhn
f4d5788313
Add test for geometry generator labeling 2019-03-10 15:03:36 +01:00
Nyall Dawson
12ba41750f Fix paletted raster renderer does not respect correct band when rendering
Fixes #21505
2019-03-07 18:50:06 +10:00
Blottiere Paul
0e8757b408
Merge pull request #9236 from signedav/scale_getlegendgraphic
On GetLegendGraphics take the scale context from map parameters
2019-02-26 10:19:56 +01:00
David Signer
61ceeb7968 expected images from travis 2019-02-25 17:07:44 +01:00
David Signer
8d1ceda878 correct images from qgis travis build 2019-02-25 15:10:14 +01:00
David Signer
de96fc75fa tests for scaled symbol sizes 2019-02-25 09:48:52 +01:00
Blottiere Paul
9f576b678e
Merge pull request #9204 from troopa81/wms_filters
Add possbility to define one filter for several layers
2019-02-25 09:05:08 +01:00
Mathieu Pellerin
3433c9cc88 [FEATURE][3d] Add camera lens field of view settings 2019-02-23 05:20:38 +10:00
Julien Cabieces
b01239449f Update mask 2019-02-22 10:53:23 +01:00
Mathieu Pellerin
78e8c34200
[legend] Fix alignment and chopped off text of collapsed data-defined size legend symbol (#9228) 2019-02-22 15:18:06 +07:00
Julien Cabieces
21bfcfcca8 [FEATURE][needs-docs] Add possbility to define one filter for several layers 2019-02-19 11:07:49 +01:00
Hugo Mercier
809196693c Fix $length in labels (fixes #19355)
Use the project expression scope to access project
parameters (ellipsoid and distance/area units)
2019-02-14 13:40:12 +01:00
Marco Hugentobler
14e517665f Add unittest for composer polyline with arrow 2019-02-08 16:23:29 +01:00
Marco Hugentobler
a321d40840 Adapt unit test control images 2019-02-08 10:56:07 +01:00
Nyall Dawson
9cf2ff31d8 Fix evaluation of data defined properties for subsymbols of subsymbols
Fixes #18384
2019-01-23 03:36:41 +11:00
Martin Dobias
8709ab61eb
Merge pull request #8893 from wonder-sk/rule-based-3d-renderer
Rule-based 3D renderer
2019-01-18 12:58:11 +01:00
Nyall Dawson
349946c669 Layer and layer node items have access to map layer expression context scope 2019-01-18 20:36:30 +11:00
Nyall Dawson
7ba5998db2 Calculate correct legend size when using expression based labels 2019-01-18 20:36:30 +11:00
Nyall Dawson
d70b60d48f [FEATURE][layouts] Allow expressions to be embedded inside legend item text
This feature allows for expressions to be embedded directly inside
legend item text (e.g. group, subgroup and item text). The expressions
are evaluated at render time, with full knowledge of the legend's
expression context (so can utilise variables from the layout/layout item/
etc)

There's no UI for this yet (that will come in 3.8), but expressions are
entered using the standard [% 1 + 2 %] format.

E.g. a legend item text of

    My layer (rendered at 1:[% @map_scale %])

will show in the output as

    My layer (renderer at 1:1000)
2019-01-18 20:36:30 +11:00
Martin Dobias
f069342b35 Rendering test for rule-based 3D renderer 2019-01-17 21:02:31 +01:00
rldhont
81aa143923 [Server][Feature][needs-docs] WMTS tile matrices configuration
In QGIS Server 3.4, the WMTS API has been added in which the tile matrices are calculated except fro EPSG:3857 and EPSG:4326.

This commit adds the capability to select the tile matrices to use with the project and to configure the top-left corner and the last level of the tile matrix. In the case of EPSG:3857 and EPSG:4326, the user can only choose the last level of the tile matrices.

Funded by Ifremer.
2019-01-17 15:29:30 +01:00
Martin Dobias
d2834bbb44 fix 3d mesh test 2019-01-16 11:02:20 +01:00
Peter Petrik
d695c4b34b [feature] [3d] [mesh] Display mesh faces in 3D view as terrain 2019-01-16 11:02:20 +01:00
Nyall Dawson
0de94dd1fe [layouts] Fix incorrectly rendered item background and frame when item is
non-opaque

Fixes #20909
2019-01-08 16:24:37 +10:00
Alessandro Pasotti
1ba6b97f74
[server] Fix layer order rendering when layers are in groups (#8796)
* [server] Fix layer order rendering when layers are in groups

Fixes #20810

* Update test images

* [server] Fix order of layers in subgroups

basically: layers in WMS is specified in a comma separated
list where leftmost layer is drawn first (it's at the bottom)
and QGIS layer order is exactly the opposite: first layer
in the TOP (topmost) is drawn last (it is at the top).

For this reason the server reverses the list before passing
it to the renderer.

* Fix order of layers in test

* Update src/server/services/wms/qgswmsrenderer.cpp
2019-01-07 13:13:30 +01:00
mhugent
54a5fae0b7
Merge pull request #8781 from mhugent/get_atlas_print
[server][needs-docs] Get atlas print
2019-01-07 10:42:23 +01:00
Alessandro Pasotti
7d592a01ba Add control image masks
Add more mask images (when image size does not match, generate_test_mask_image.py fails to update the mask)
2019-01-05 20:48:49 +01:00
Marco Hugentobler
583674bbb5 Remove diagrams from atlas print test as it shows different behaviour in different environments 2019-01-05 15:16:38 +01:00
Marco Hugentobler
df8940c6bf Add control image for atlas GetPrint test and fix some python stuff 2019-01-05 15:16:38 +01:00
Alessandro Pasotti
3c2392808d Update control images 2019-01-04 19:30:28 +01:00
Alessandro Pasotti
d49994005c [server] Respect layer title space when rendering legends
Fixes #20693 - LAYERTITLESPACE in GetLegendGraphic is not taken into account
2019-01-04 14:32:43 +01:00
Nyall Dawson
201523fb85 Test masks 2019-01-03 04:53:28 +10:00
Nyall Dawson
a441e2b14b [layouts] Add API allowing drawing map overviews under map layers
or under map labels
2019-01-03 04:53:28 +10:00
Nyall Dawson
0f7d8c05e3 Split layout map overview tests into their own file, add masks 2019-01-03 04:53:28 +10:00
Nyall Dawson
a2b5008b30 [FEATURE][layouts] Allow layout items to "block" map labels
This feature allows other layout items (such as scalebars,
north arrows, inset maps, etc) to be marked as a blockers for
the map labels in a map item. This prevents any map labels from
being placed under those items - causing the labeling engine
to either try alternative placement for these labels (or
discarding them altogether)

This allows for more cartographically pleasing maps -- placing
labels under other items can make them hard to read, yet without
this new setting it's non-trivial to get QGIS to avoid placing
the labels in these obscured areas.

The blocking items are set through a map item's properties, under
the label settings panel. The setting is per-map item, so you can have
a scalebar block the labels for one map in your layout and not others
(if you so desire!)
2018-12-21 04:12:32 +10:00
Nyall Dawson
620baa0d22 Layout map test reference image updates 2018-12-21 04:12:32 +10:00
Nyall Dawson
089a2f1c17 [FEATURE][layouts] Add new setting to control whether map items
should show partial labels

Layout map items no longer respect the default project setting
for "show partial labels", and instead have their own, per map
setting for this option. (Under the map item properties,
labeling settings button).

The map item setting always defaults to off (unlike the canvas
setting, which defaults to true for a new project) as layouts
should always default to the settings which produce the highest
quality cartographic outputs.

In general I suspect that most users would always want to avoid
rendering partial labels in layouts, but this setting was
previously so deeply hidden that most are unaware of how to
change it. (And previous discussion about changing the canvas
setting to hide partial labels deemed this default undesirable
for the canvas, where showing even a small part of a label
on the map border can help identify what sits just on/off
the edges of the map)
2018-12-18 15:32:29 +10:00
Nyall Dawson
8d7e21fc6d Test mask updates 2018-12-15 11:28:56 +10:00
Nyall Dawson
d8eac4797e [FEATURE][API] Add method to QgsMapSettings for specifying label blocking regions
These represent areas of the map where NO labels should be placed
2018-12-15 11:28:56 +10:00
Nyall Dawson
ed25a3e2ee [FEATURE][layouts] Add setting for label margin for map items
This setting allows per-map control of how close labels are permitted
to be placed to the map item's edges.

Sizes can be set using mm/inches/pixels/etc, and data defined
label margins are allowed.

Fixes #10314
2018-12-15 11:28:56 +10:00
Nyall Dawson
35855b88e1 [FEATURE][API] Add API to set a margin for labels for layout map items
This controls how close labels are permitted to the edges of the map
item. The labeling engine will then try other candidate positions
in order to avoid placing labels within this margin.
2018-12-15 11:28:56 +10:00
Nyall Dawson
4252aabe00 [FEATURE][API] Add option to specify a custom boundary geometry
in QgsMapSettings to restrict where labels are allowed to be placed
within.

If set, this overrides the default behavior of allowing labels to
be placed anywhere inside the rendered map extent.
2018-12-15 11:28:56 +10:00
Nyall Dawson
a49bf9f68f Unit tests for item opacity 2018-12-11 09:45:37 +10:00