47139 Commits

Author SHA1 Message Date
rldhont
120d5b1d11 [Tests][Server] Add unit test for empty contextual legend
Manually port c217cbb4dd140695af74debbe052dbefc1d21e74
2018-04-24 13:17:31 +02:00
Matthias Kuhn
11741ad460
Merge pull request #6626 from alexispolti/fix_georeferencer_crash_18227
[bugfix] Fix georeferencer crash when deleting a point through context menu #18227
2018-04-24 08:17:55 +02:00
Nathan Woodrow
409ec85329
[FEATURE][needs-docs] Rework expression parser for unknown functions (#6840)
* [FEATURE][needs-docs] Rework expression parser for unknown functions

* Remove old comment

* Rename NAME and update tests

* Change COLUMN_REF to QUOTED_COLUMN_REF
2018-04-24 14:26:41 +10:00
Nyall Dawson
70b67c6150 Add some more line segment methods 2018-04-24 10:07:51 +12:00
Nyall Dawson
cd3b976d7e Add class for comparing angles to points in a clockwise fashion 2018-04-24 10:07:51 +12:00
Nyall Dawson
fa9f62fc1c Add class for comparing distance from two line segments to an origin 2018-04-24 10:07:51 +12:00
Nyall Dawson
6e6ddbba3f Add QgsRay2D class representing an infinite ray from a point in a direction 2018-04-24 10:07:51 +12:00
Nyall Dawson
8f1d1a31c9 Add reverse method to QgsLineSegment2D 2018-04-24 10:07:51 +12:00
Nyall Dawson
646b4af057 Add left of line test to QgsLineSegment2D 2018-04-24 10:07:51 +12:00
Nyall Dawson
486c3a2d6f Apply clazy optimisation to orthogonalize algorithm 2018-04-24 10:07:51 +12:00
Nyall Dawson
59c9b97651 Declare typeinfo for QgsVector to optimise use in Qt containers 2018-04-24 10:07:51 +12:00
Nyall Dawson
c6a50fe772 Add QgsLineSegment2D class, for simple 2d line segments which
consist of just a 2D start and end point
2018-04-24 10:07:51 +12:00
Nyall Dawson
01f036cf52 Add some useful QgsVector methods 2018-04-24 10:07:51 +12:00
Nyall Dawson
d5647bcbdb [FEATURE] Add wedge_buffer expression function
Returns a wedge shaped buffer originating from a point geometry,
with arguments for azimuth, buffer width (in degrees), outer radius
and inner radius.
2018-04-24 10:07:51 +12:00
Nyall Dawson
2850b308ba Add unit test for wedge buffers alg 2018-04-24 10:07:51 +12:00
Nyall Dawson
b884eb4a71 [FEATURE][processing] Native wedge buffer algorithm
This algorithm creates wedge shaped buffers from input
points.

The azimuth parameter gives the angle (in degrees) for the
middle of the wedge to point. The buffer width (in degrees)
is specified by the width parameter. Note that the
wedge will extend to half of the angular width either side
of the azimuth direction.

The outer radius of the buffer is specified via outer radius,
and optionally an inner radius can also be specified.

Supports dynamic parameters for azimuth, width, and radius.

The native output from this algorithm is CurvePolygon
geometries, but these may be automatically segmentized to
Polygons depending on the output format.
2018-04-24 10:07:51 +12:00
Nyall Dawson
e047738981 Add QgsGeometry method to create wedge shaped buffers
Creates a wedge shaped buffer using circular strings, with
parameters for azimuth, wedge width (in degrees), outer radius
and inner radius.
2018-04-24 10:07:51 +12:00
Nyall Dawson
9a6d966d35 Allow using the longer arc with two point and center methods 2018-04-24 10:07:51 +12:00
Nyall Dawson
732d6bb475 Add convenience constructors to create QgsCircularStrings
Add constructors to create a circular string with a single arc:
- from 3 points on arc
- from 2 points and a center
2018-04-24 10:07:51 +12:00
Nyall Dawson
3f3b9515ef Add convenience constructor to create QgsLineString between two points 2018-04-24 10:07:51 +12:00
Nyall Dawson
fbf6b4a383 Add geometry method to calculate mid point on an arc from p1->p2 with given center
And improve some docstrings
2018-04-24 10:07:51 +12:00
Nyall Dawson
2d7632fc1a [oracle] Always check bounding box intersection when using filter rect
Because oracle sdo_filter sometimes returns results outside
the given filter (depending on the spatial index), and is
only designed for use as a fast "first-pass" filter.

From the Oracle docs:

"This operator performs only a primary filter operation..

The secondary filtering operation, performed by the SDO_RELATE operator,
can be used to determine with certainty if objects interact spatially."

Instead of using SDO_RELATE we can instead just do a bounding
box intersection inside QGIS if an exact intersection is not
required.

Fixes failing provider conformance test suite for oracle provider.
2018-04-24 09:13:18 +12:00
Nyall Dawson
ac7760be10 Indentation 2018-04-24 09:10:39 +12:00
Nyall Dawson
6c867c0dc5 [oracle] Fixes for edit tests (still disabled) 2018-04-24 09:10:39 +12:00
Nyall Dawson
92a80894ac [oracle] Add read-only support for curved geometry types
Previously these geometries were silently discarded

Fixes #12675, #16809

Sponsored by Open Spatial (http://www.openspatial.com)
2018-04-24 09:10:39 +12:00
Harrissou Sant-anna
a0c3844574 Replace Edit Nodes Item icon 2018-04-23 15:32:34 +07:00
Nathan Woodrow
53a384cba7
[FEATURE][needs-docs] Show data defined expected format in expression builder (#6839) 2018-04-23 13:32:51 +10:00
Nathan Woodrow
76b956a6a3
[FEATURE][needs-docs] Don't bail on first expression error (#6838) 2018-04-23 10:50:43 +10:00
Juergen E. Fischer
8e7486bf56 update_ts.sh: handle empty exclusion 2018-04-23 00:20:25 +02:00
Nyall Dawson
a2fbf5e1de [oracle] Fix some clazy warnings 2018-04-23 05:09:10 +10:00
Nyall Dawson
3032ab7472 [oracle] More code modernization 2018-04-23 06:26:59 +12:00
Nyall Dawson
2273dfacb6 [FEATURE][oracle] Allow restricting table list for a connection
to a specific schema

This allows a schema to be set in the connection properties for
an oracle db connection. If set, only tables within that schema
will be scanned and listed for the connection.

Previously the option existed to restrict the scan to tables
which belong to the user, but this option does not support
the use case where a connection must access tables from a different
user, and the default "scan everything" setting is too expensive
(since it often takes multiple minutes to perform, especially
when geometryless tables are shown).

Sponsored by Open Spatial (http://www.openspatial.com)
2018-04-23 06:26:59 +12:00
Nyall Dawson
31faa11bfb [oracle] More code modernization 2018-04-23 06:26:59 +12:00
Nyall Dawson
8d1b435255 [oracle] Address more clazy warnings 2018-04-23 06:26:59 +12:00
Nyall Dawson
529173f3fa [oracle] Fix clazy warnings in new connection dialog 2018-04-23 06:26:59 +12:00
Juergen E. Fischer
9242d2f960 remove plugin_template exclusion from translation updates (followup 605ef7d8294b6) 2018-04-21 14:32:28 +02:00
Nyall Dawson
4d61fb5e63 [oracle] Fix crash when adding a feature with missing attributes
to data provider
2018-04-21 21:21:28 +10:00
Nyall Dawson
a74414c0ae [oracle] Always fetch features with null goemetry unless feature rect is set
...to match behaviour of other providers
2018-04-21 21:21:28 +10:00
Nyall Dawson
dd2ff1587a [dbmanager][oracle] Add some missing imports 2018-04-21 17:07:34 +10:00
Blottiere Paul
d589ba7d7c Try to add cancel support for Oracle databases in dbmanager 2018-04-21 17:03:11 +10:00
Nathan Woodrow
b22121ac75
[FEATURE][needs-docs] Hyperlink functions to show help in builder (#6796) 2018-04-21 12:58:12 +10:00
Loïc Bartoletti
44c72a01f7 Typos and re indent 2018-04-21 08:16:14 +10:00
Loïc Bartoletti
f558b742cf Add tests 2018-04-21 08:16:14 +10:00
Loïc Bartoletti
2702a3092f Fix warn doc 2018-04-21 08:16:14 +10:00
Loïc Bartoletti
b09cbaeb98 sipify 2018-04-21 08:16:14 +10:00
Loïc Bartoletti
70d5536054 fix doc 2018-04-21 08:16:14 +10:00
Loïc Bartoletti
0bacf0ff16 - Add some methods in QgsVector3D
- Move QgsVector3D from 3d to core
- Use QgsVector3D instead of QVector3D
2018-04-21 08:16:14 +10:00
Loïc Bartoletti
9d649e738a Add skewLines intersection algorithm 2018-04-21 08:16:14 +10:00
Nyall Dawson
d87f75aa98 [processing] Unit tests for distance param widget wrapper 2018-04-20 22:44:28 +10:00
Nyall Dawson
91c1277035 [processing] Swap more QGIS and GDAL algorithm parameters to distance params 2018-04-20 22:44:28 +10:00