11 Commits

Author SHA1 Message Date
Juergen E. Fischer
a90be95f7b sip sync 2016-02-14 03:50:49 +01:00
Martin Dobias
fa66583e6f Improve indexing strategy for snapping (fixes #12578)
Implemented a simple heuristic that should keep the number of cached
features per layer reasonable - and thus lower the amount of consumed
memory and CPU for big layers.
2016-01-27 23:16:47 +01:00
Martin Dobias
86307ffc7c Add debug capabilities to snapping utils 2016-01-27 23:16:46 +01:00
Nyall Dawson
556d87a86c Fix some clang warnings 2015-11-02 18:07:16 +11:00
Matthias Kuhn
3613ba5701 QgsPointLocator::Type : Type safety 2015-09-26 13:45:07 +02:00
Juergen E. Fischer
abd4a04399 sip update 2015-02-03 02:21:52 +01:00
Martin Dobias
cad3173d6e QgsSnappingUtils: improvements of the hybrid indexing strategy
Instead of calculating feature count (which may add extra overhead),
let's directly try to build index for layers. Only when a certain limit
of features is reached (currently 1 million), the indexing is cancelled
and layer is marked as non-indexable.
2015-01-23 14:30:46 +07:00
Martin Dobias
dbe830b0bb Point locator: Use just one R-tree for indexing instead of three R-trees
The maintenance of three R-trees was too complicated, using a lot of memory
and the performance benefit was questionable :)
The approach with just one R-tree leads to much simpler code

Removed k-NN queries in the process - they were not used in QGIS code. They can be
reintroduced later, but there is not much use for them right now...
2015-01-20 18:54:07 +07:00
Martin Dobias
54e8493bc7 QgsPointLocator: make it possible to index just a part of layer 2015-01-20 10:21:55 +07:00
Martin Dobias
f8fc8a0a31 Final removals of QgsMapCanvasSnapper 2015-01-20 10:21:55 +07:00
Martin Dobias
4b8ea28262 Add QgsSnappingUtils::snapToCurrentLayer() + utility methods in QgsTolerance
Also added missing SIP wrappers for new classes QgsPointLocator and QgsSnappingUtils
2015-01-20 10:21:55 +07:00