4808 Commits

Author SHA1 Message Date
Martin Dobias
7bce7ea9ca [3d] Fix crash in tessellator with near coords (fixes #17286, fixes #17515)
As the readme of poly2tri library says: "Poly2Tri does not support repeat points within epsilon."

When the coordinates are very near to each other, we get crashes in triangulation code.
To prevent that, we try to simplify geometries to hopefully fix the problem automatically,
if that fails we just skip the polygon as the last resort.

Usually this happens if user tries to use 3D renderer on unprojected lat/lon coordinates.
2017-11-27 17:01:38 +01:00
Blottiere Paul
4aa97d865d Add a test 2017-11-27 09:15:57 +00:00
Nyall Dawson
9bfb3f31ee Fix regexp_substr expression function returning whole match instead of captured group 2017-11-27 17:29:41 +10:00
Nyall Dawson
006da6e365 Move conversion of tesselation to multipolygon to QgsTessellator
Also
- add unit test
- fix bad tesselation due to missing origins
2017-11-27 06:54:29 +11:00
Nyall Dawson
3310343bcd [processing] Add a model-only "load layer to project" algorithm
This can be used to force loading a layer into the current project.
The primary use case here is to load a preset layer as part of a
model, but it's also useful for loading results from the
'package layers' algorithm into the project.
2017-11-27 06:38:21 +11:00
Nyall Dawson
6283ca62bc [processing] Add a model-only algorithm for renaming layers
This is required for algorithms with behaviour which depends on the
layer names (e.g. the package algorithm uses the layer name as
the table name in the geopackage).

We need a way for models to be able to explicitly specify a layer
name for this algorithm to be useful in models, otherwise the
auto-generated temporary layer names are used (which are not
very nice!)
2017-11-27 06:38:21 +11:00
Nyall Dawson
3d307b4109 Improve name of memory layers output from processing 2017-11-27 06:38:21 +11:00
Nyall Dawson
96857ebdd4 Fix crash when a geopackage layer is open in QGIS, and then is overwritten
with another layer with different field definitions
2017-11-26 07:34:51 +11:00
Alessandro Pasotti
72553a60a9
Merge pull request #5710 from elpaso/api-code-cleaning-int-2-enums
QgsVectorLayer code cleaning use enums instead of int
2017-11-24 16:16:26 +01:00
Matthias Kuhn
aaf70de71e Add test for QgsExpressionContextScope::takeScopes 2017-11-24 16:09:05 +01:00
Matthias Kuhn
fd127ee6a4 Fix file mode 2017-11-24 16:09:05 +01:00
Nyall Dawson
14531964a8
Merge pull request #5719 from nyalldawson/translate_z
geometries: translate Z/M
2017-11-24 22:12:11 +11:00
Nyall Dawson
dd223d9b08 Allow transform methods in QgsAbstractGeometry/QgsGeometry to also
transform z/m values via scale/translate arguments
2017-11-24 15:34:35 +10:00
Nyall Dawson
03ec2d8a98
Merge pull request #5702 from nyalldawson/dxf_improve
[dxf] Add option to export labels as text elements, instead of mtext
2017-11-24 15:58:46 +11:00
Nyall Dawson
c04b91f4f3 Fix some memory leaks 2017-11-24 09:31:50 +10:00
Nyall Dawson
117842802a Fix running processing tests multiple times 2017-11-24 09:31:50 +10:00
Nyall Dawson
abcdd48580 [ogr] Fix cannot create layers for geopackage datasets when
the database does not yet exist
2017-11-24 09:31:50 +10:00
Nyall Dawson
59d55fc44c [processing] Ensure correct sublayer is loaded when saving output
to destination with multiple sublayers
2017-11-24 09:31:50 +10:00
Nyall Dawson
f7a317be78 [processing] Fix saving outputs to non-file formats 2017-11-24 09:31:50 +10:00
Martin Dobias
a2ff3631d5 Fix tessellation of polygons that are not horizontal
Discovered by Nyall while working on PR #5708

Tessellation would shift coordinates because when points got reprojected
to the new base, the Z coordinates were considered zero (which worked only
when all points were on the same plane).
2017-11-23 14:09:03 +01:00
Alessandro Pasotti
4f82adf2c8 Update tests 2017-11-23 13:58:00 +01:00
Alessandro Pasotti
def85fa202 QgsVectorLayer code cleaning use enums instead of int
It was one of the TODOs for QGIS 3
2017-11-23 12:09:30 +01:00
Nyall Dawson
5206bf0f76 [3d] Fix creation of extruded walls in vertex binding mode
Previously the walls always had horizontal top/bottom, but
in vertex binding mode the walls need to have different z values
at the start and end coordinate

Note that the unit test exposes a different bug in the tesselator,
which should also be fixed...
2017-11-23 11:40:52 +01:00
Alessandro Pasotti
9d8a39fac0
Merge pull request #5694 from elpaso/bugfix-17518-pg-import--without-schema
[bugfix][postgres] Browser panel D&D a layer onto a postgresql connection tree …
2017-11-23 07:53:57 +01:00
Nyall Dawson
07e4c57291 Add some unit tests for DXF export 2017-11-23 14:44:23 +10:00
Nyall Dawson
fada3d9ace Add unit test for package algorithm 2017-11-23 11:27:24 +10:00
Alessandro Pasotti
9f56878d88 [bugfix] Add some more logic to get the schema name if empty 2017-11-22 17:22:14 +01:00
Alessandro Pasotti
23dfb1de57 [bugfix] Browser panel D&D a layer onto a postgresql connection tree node icon fails without notice
Fixes #17518 by defaulting to "public" if no schema is given
2017-11-22 13:02:15 +01:00
Blottiere Paul
fd1539f502 Skip test instead of commenting 2017-11-22 07:46:24 +00:00
Blottiere Paul
e29f605bb3 Add some masks and set a higher threshold for comparing images 2017-11-22 07:46:24 +00:00
Blottiere Paul
1c81c4236b Disable a test 2017-11-22 07:46:24 +00:00
Blottiere Paul
d24de06c10 Split some WMS tests 2017-11-22 07:46:24 +00:00
Nyall Dawson
b058df7d1d
Merge pull request #5686 from nyalldawson/encoding
[processing] Don't use crappy Qt file picker dialog
2017-11-22 07:27:50 +11:00
Alessandro Pasotti
b2c6464e58
Merge pull request #5679 from elpaso/bugfix-16935-gpkg-split-features
[bugfix] Editing a GPKG layer added by d&d leads
2017-11-21 14:00:45 +01:00
Etienne Trimaille
373471214f rename metadata() to htmlMetadata() in QgsRasterDataProvider 2017-11-21 11:38:50 +01:00
Nyall Dawson
f660d78017 Add a new dialog for selecting file encoding, QgsEncodingSelectionDialog
Can be used to prompt users for a file encoding choice
2017-11-21 20:38:07 +10:00
Matthias Kuhn
62713a5029
Merge pull request #5510 from m-kuhn/relationsearch
[FEATURE] Search widget for relations using aggregates
2017-11-21 09:11:26 +01:00
Alessandro Pasotti
a12939d380 [ogr] Implement skipConstraintsCheck for fid
With test.
2017-11-21 09:03:24 +01:00
Nyall Dawson
95cf299099 Followup c9b8ddc, add unit test 2017-11-21 08:58:54 +10:00
Matthias Kuhn
04101c3f43 Add dummy canvas to test 2017-11-20 20:31:39 +01:00
Matthias Kuhn
f8a8cb96b8 Fix failing tests 2017-11-20 20:31:39 +01:00
Alessandro Pasotti
f97b5a54d0 Fix test for primary key constraints 2017-11-20 18:30:49 +01:00
Alessandro Pasotti
73d6765e89 [bugfix] Editing a GPKG layer added by d&d leads
... to error and data corruption

Fixes #16935 for GPKG (OGR), still  needs to check spatialite

Thanks to Matthias Kuhn for pointing me into the right direction
2017-11-20 17:04:17 +01:00
Matthias Kuhn
67b68a841d
Merge pull request #5578 from gacarrillor/iface_copy_paste_features
Expose through iface methods to copy/paste features between given layers
2017-11-20 07:24:41 +01:00
Nyall Dawson
eb2ef6a681
Merge pull request #5672 from nyalldawson/provider_fixes2
Add tests/fixes for some provider issues
2017-11-20 11:51:49 +11:00
Nyall Dawson
8cf9f8fb6f Fix combining extent of valid rectangle with invalid rectangle results
in invalid rectangle
2017-11-20 08:29:17 +11:00
Nyall Dawson
6c4a8a246e Update WFS tests 2017-11-19 17:19:04 +10:00
Nyall Dawson
d6eb8eccdd Add a bit of tolerance to WFS provider test
Was failing on Fedora 27
2017-11-19 16:20:02 +10:00
Nyall Dawson
705416c489 More consistent exception throwing in QgsCoordinateTransform::transformBoundingBox
Depending on the os and proj versions, we weren't always getting an
exception when a bad bounding box transform was made. So now we
explicitly check the result, and if everything was invalid
then we also throw an exception.

This makes the behavior consistent across different platforms,
and fixes running the provider tests on non Travis platforms
(highly likely also fixes various issues encountered while running
QGIS)
2017-11-19 16:17:30 +10:00
Nyall Dawson
957cf652aa Add some more provider tests for feature count when subset string is added/removed 2017-11-19 08:59:12 +10:00