15211 Commits

Author SHA1 Message Date
Alessandro Pasotti
b3a448a2b2 Do not store context in layer (but in provider) ...
... also use transform context in raster projector
and deprecate setCrs without context
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
7f52e2938a doxy 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
7b6f9c0dbc Restore default ctor for options and layer 2019-04-17 10:06:41 +10:00
Nyall Dawson
b6bc1ee2d4 Tweak QgsProcessingUtils::combineLayerExtents for future proofing, remove deprecated usage 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
82f2cb18b2 Deprecate default ctor for mesh layer options 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
f8dfdc4aa0 Deprecate method without transformContext 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
e930bee9e2 Add mandatory options to QgsVectorLayer ctor
... and deprecate the rest.

In QGIS 4 we'll have to get rid of the deprecated default ctor and
create a new one which takes no arguments.
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
6813a55fce Deprecate vector layer ctor with default constructed options
replaced by QgsVectorLayer( const QgsVectorLayer::LayerOptions &options,
...
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
4614c3e0bd Dox typos 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
5f3dc50ccc Remove deprecated QgsCoordinateTransform ctor ...
... and add a getter for coordinateTransform to QgsMapLayer

The reason is that I think we should reduce the dataProvider API
usage and rely on the higher level QgsMapLayer API whenever it
is possible, QgsMapLayer checks for data provider validity
and returns a default constructed QgsCoordinateTransform instead
of crashing.
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
7f271d1ebd More coordinateTranformContext -> tranformContext 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
470759833e coordinateTransformContext -> transformContext for consistency
I like "coordinateTransformContext" more btw.
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
df2bdf9c1a Handle the coordinate tranform context in the layer ctor
Also use the context when read/write XML by passing it
in the R/W context
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
71698bf707 Remove all deprecated usages of QgsCoordinateTransform without context 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
3d5e67e72c Fix SIP (sipify does not like inline initializers) 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
dcf206232c Step2 of coordinate traform context passing: SIP broken 2019-04-17 10:06:41 +10:00
Alessandro Pasotti
c21cd35fe0 Add coordinate transform context to data provider options
First step to pass the context down into the rabbit hole.
2019-04-17 10:06:41 +10:00
Alessandro Pasotti
a809625be9 Add default precision value 2019-04-16 19:26:10 +02:00
Alessandro Pasotti
64fdbe3d76 Added tests and doxy 2019-04-16 15:17:25 +02:00
Alessandro Pasotti
be8822ed8b Precision and 3d 2019-04-16 14:00:59 +02:00
Alessandro Pasotti
6967a21882 toJsonV2 2019-04-16 14:00:59 +02:00
Alessandro Pasotti
722282828e Use QJson for JSON encoding of features 2019-04-16 14:00:59 +02:00
Matthias Kuhn
b90a01847f
Prefer parameterAsBoolean over parameterAsBool 2019-04-16 08:30:00 +02:00
Juergen E. Fischer
891ea18bab debian packaging: add ubuntu disco 2019-04-15 23:38:20 +02:00
Matthias Kuhn
4771f802fc
Add QgsProcessingParameters::parameterAsBoolean for consistency 2019-04-15 14:08:41 +02:00
David Signer
27fc381600 fix comment 2019-04-12 22:24:42 +02:00
Matthias Kuhn
d0e24e8bc4
Add QgsProcessingAlgorithm::parameterAsBoolean
For consistency

Alias to QgsProcessingAlgorithm::parameterAsBool(), because the parameter class is called
QgsProcessingParameterBoolean
2019-04-12 21:26:09 +02:00
Alessandro Pasotti
507e327c0c Handle broken plugins when searching for dependencies 2019-04-12 14:38:52 +02:00
David Signer
1c3cfd1e13 use calculation factor for scale 2019-04-11 11:42:45 +02:00
David Signer
7ef426b0ef using of configured default map units per mm for legend symbols in case no BBOX parameter is passed 2019-04-11 11:42:45 +02:00
nirvn
9ce1093bce [FEATURE][ogr] Add string list field type support 2019-04-10 08:06:12 +07:00
Blottiere Paul
c2840a26eb
Merge pull request #9699 from pblottiere/server_split
[server] Move specialised funtions in correponding service cpp files
2019-04-09 16:35:24 +02:00
Blottiere Paul
c09e10ceb2 Update doc and sip binding 2019-04-09 15:43:11 +02:00
Blottiere Paul
911ef98677 Update sip binding 2019-04-09 15:43:11 +02:00
Alessandro Pasotti
e57d1e06f0 Fix plugin loading from zip (dependencies followup) 2019-04-09 15:21:09 +02:00
Martin Dobias
b5fec5872b Edge settings for polygons + GUI to configure edge rendering 2019-04-09 09:42:08 +02:00
Nyall Dawson
933559b655 [processing] Report provider version string alongside QGIS version in log
Helpful for debugging and reproducability of results
2019-04-08 16:59:15 +10:00
Nyall Dawson
708bf4425b [processing] Add version method to QgsProcessingProvider
Allows retrieving provider version
2019-04-08 16:59:15 +10:00
Nyall Dawson
d3016d73d4 [processing] Add method to specify additional expression context variables
which will be available to a parameter when it is evaluated.

Specifying variables via this method is for metadata purposes only.
It is the algorithm's responsibility to correctly set the value of
these additional variables in all expression context used when evaluating
the parameter, in whichever way is appropriate for that particular variable.
2019-04-08 07:07:12 +10:00
Nyall Dawson
ee51551baa Add method to retrieve highlighted variable list from QgsExpressionContext 2019-04-08 07:07:12 +10:00
Marco Bernasocchi
8b3f97fa19
Merge pull request #9691 from mbernasocchi/check_width_height
Allow setting wmsMaxWidth and wmsMaxHeight in the server env
2019-04-05 20:04:40 +02:00
rldhont
8b508dd4cb
Merge pull request #9696 from rldhont/fix-server-styles-parameters-splitting-master
[server] Server removes empty string in style parameter even if it describes default style
2019-04-05 14:37:54 +02:00
Matthias Kuhn
2bb049ecd1
Code modenization 2019-04-05 11:25:30 +02:00
rldhont
98235eb46b [Bugfix][Server] QGIS Server removes empty string in style parameter even if it describes default style
In OGC WMS standard, the empty string represents the default style.

QGIS Server when it parses the parameters, QGIS Server when it parses parameters it removes empty parts.
When all requested styles are default ones it's equal to an empty parameter STYLE, as defined in the standard.
When only one layer is requested, there is no issue with custom or default style.
When multiple layers are requested and some with custom styles, because QGIS Server does not retain empty strings, it loses the layer / style match.

To fix it, keeps empty parts for not empty styles parameters.
2019-04-05 09:29:21 +02:00
Marco Bernasocchi
2cda2afe3e Add test and sip
add missing methods

Signed-off-by: Marco Bernasocchi <marco@opengis.ch>

Update src/server/qgsserversettings.cpp

Co-Authored-By: mbernasocchi <marco@opengis.ch>

Update src/server/qgsserversettings.cpp

Co-Authored-By: mbernasocchi <marco@opengis.ch>

Update tests/src/python/test_qgsserver_wms_getmap.py

Co-Authored-By: mbernasocchi <marco@opengis.ch>

Update src/server/qgsserversettings.h

Co-Authored-By: mbernasocchi <marco@opengis.ch>

Adress most review comments in PR

Signed-off-by: Marco Bernasocchi <marco@opengis.ch>
2019-04-05 08:01:41 +02:00
nirvn
5e0fd15570 [FEATURE][processing] Add concatenate_unique support to the aggregate alg 2019-04-05 12:01:06 +07:00
nirvn
9fd5509ad0 Add a aggregation method to concatenate unique values 2019-04-05 12:01:06 +07:00
Nyall Dawson
426382c919 [FEATURE] Average line angles for marker and hashed line symbology
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)
2019-04-05 12:00:47 +10:00
Nyall Dawson
c2cac5aab0 Use unique_ptrs for proj object storage
Sponsored by ICSM
2019-04-05 11:33:08 +10:00
Juergen E. Fischer
eabf56bfb3 fix #21774 2019-04-05 01:15:16 +02:00