Menelaos Karavelas
d7bcd44974
[set ops] remove unused code in #if 0/#endif block; remove some obvious comments;
2014-04-10 09:13:20 +03:00
Menelaos Karavelas
17f3b3be58
[set ops] Barend's review: (1) remove unused variables; (2) fix #includes; (3) remove Linestring const*;
...
Other: remove unused argument in process_turn;
2014-04-10 09:10:22 +03:00
Menelaos Karavelas
fdc02a60fe
[test] add missing include (fstream)
2014-04-10 09:07:42 +03:00
Menelaos Karavelas
193bca333b
[set ops] add missing includes; remove unnecessary ones
2014-04-10 08:57:25 +03:00
Menelaos Karavelas
b8765e195a
[set ops] added missing include (fstream)
2014-04-10 08:46:20 +03:00
Menelaos Karavelas
caadd6ce00
[set ops] replace included unit test by unit test
2014-04-10 08:45:38 +03:00
Adam Wulkiewicz
ccc40d3a0b
[relate] cleanup, increase the readability of relate() dispatching, remove unneeded code
2014-04-09 21:53:12 +02:00
Adam Wulkiewicz
9b384bbcab
[doc] add dummy file to empty index/generated directory to force GIT t ohandle it properly
2014-04-09 03:34:29 +02:00
Adam Wulkiewicz
edf8a613ff
[doc][crosses][overlaps] add crosses() to make_qbk.py script, add parameters info to crosses() and overlaps()
2014-04-09 03:26:07 +02:00
Adam Wulkiewicz
0374154930
[relate] fix GCC compilation error caused by a missing #include
2014-04-09 01:52:41 +02:00
Adam Wulkiewicz
2753f5e30a
[crosses] add missing files required by bg::crosses() algorithm
2014-04-09 01:34:34 +02:00
Adam Wulkiewicz
d3f8ea2f6b
[crosses] add bg::crosses() algorithm
2014-04-09 01:33:37 +02:00
Adam Wulkiewicz
c1d4a09ec7
[overlaps] add support for P/P, L/L and A/A to overlaps()
2014-04-09 00:23:26 +02:00
Adam Wulkiewicz
1cb4f1f013
[relate] add tests for Poly/MPoly, CCW and open Polygons
2014-04-08 23:40:54 +02:00
Adam Wulkiewicz
d60b0e7cc4
[relate] add tests for Polygons with rings for which IPs were not generated
2014-04-08 15:49:15 +02:00
Adam Wulkiewicz
9e00853dfa
[relate] fix: add missing handling of single geometries for which no IPs were generated (exterior ring inside, hole outside)
2014-04-08 15:33:18 +02:00
Adam Wulkiewicz
1c7fa89626
[relate] Fix warnings (unused variables)
2014-04-08 00:16:21 +02:00
Adam Wulkiewicz
d76c94d643
[relate] add optimization for L/L ommitting parts of the algorithm if the result mustnot be updated
2014-04-07 23:52:40 +02:00
Adam Wulkiewicz
cce6c71782
[relate] Add optimizations for L/A disabling parts of the code if the result mustnot be updated
2014-04-07 21:20:20 +02:00
Adam Wulkiewicz
eca27bc8af
Merge branch 'develop' into feature/relate
2014-04-07 14:31:16 +02:00
Adam Wulkiewicz
e7e0083428
[relate] Add optimization to A/A skipping parts of the algorithm if it's not possible to change the final result.
...
Add may_update() funcionality which may be used if it's possible to change the result for the specified matrix fields and overlap dimension.
Initialize flags in no_turns_aa_pred and uncertain_rings_analyser with values calculated using this functionality.
Add manual checks around the parts of areal_areal::apply() where IPs are sorted and analysed.
2014-04-07 14:18:34 +02:00
Menelaos Karavelas
3604f45e88
Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops
2014-04-07 12:27:44 +03:00
Menelaos Karavelas
091bccbcff
Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple
2014-04-07 12:25:44 +03:00
Adam Wulkiewicz
df63e9d446
Merge pull request #5 from mkaravel/feature/point_iterator
...
[point_iterator] fix errors and warnings for g++ and clang++ with C++11 enabled
2014-04-07 11:17:26 +02:00
Menelaos Karavelas
a307bec090
[point iterator][concatenate iterator] replace enable_if mechanism by static assert; add templated assignment operator; make dereference and increment inline;
...
templatize equal for comparison against other concatenate iterator (needed for interoperability between const/non-const versions);
2014-04-07 11:31:42 +03:00
Menelaos Karavelas
cb3a103256
[point iterator] replace enable_if mechanism by static assert;
2014-04-07 11:30:20 +03:00
Menelaos Karavelas
0316b64019
[point iterator][flatten iterator] replace enable_if mechanism in copy constructor by static asserts;
...
add static assert to assignment operator; make dereference inline;
2014-04-07 11:27:46 +03:00
Menelaos Karavelas
457d22d0d9
[point iterator] add tests for const/non-const iterator equality/inequality
2014-04-07 11:26:14 +03:00
Menelaos Karavelas
2ea67309e7
[point iterator][concatenate iterator] make the unit test more elaborate: add tests for vector-vector and list-list container conbinations
2014-04-07 11:22:07 +03:00
Menelaos Karavelas
ab5c78cec0
[point iterator] minor stylistic fix
2014-04-07 11:19:45 +03:00
Adam Wulkiewicz
8c2ee6152a
[relate] Fix wrong type in interrupt_policy for A/A.
...
Add tests for MLs/MLs, Ring/Poly, Ring/Ring.
2014-04-07 01:30:05 +02:00
Adam Wulkiewicz
7bde891d7a
[relate] Add the support for IPs generated for "real" and "fake" holes.
...
Rename turns::less_seg_dist_op<> to relate::turns::less<>
It now takes the Comp defining how operations are sorted if segment and distance are equal.
Add 2 different operations comparators for L/L,L/A and A/A.
Add tests.
2014-04-07 01:08:24 +02:00
Adam Wulkiewicz
09ab2351f9
[relate] Add support for rings with no turns and some special cases in A/A.
...
Add support for:
- single geometries for which no turns were generated
- rings for which no turns were generated
- i/i and u/u turns
TODO: some cases where turns are generated for the intersection of a "real" hole and a "fake" hole (self-touching exterior ring).
2014-04-06 02:52:24 +02:00
Menelaos Karavelas
082adbb655
[point_iterator] fix errors and warnings for g++ and clang++ with C++11 enabled
2014-04-06 01:43:25 +03:00
Menelaos Karavelas
7ac1188823
[feature/is_simple] add test case for multi-points
2014-04-04 16:24:06 +03:00
Menelaos Karavelas
029517cff8
[feature/is_simple] modify debug print-outs a bit
2014-04-04 16:18:38 +03:00
Menelaos Karavelas
dfc3785d48
[feature/is_simple] implement OGC is_simple test for points, segments, multi-points, linestrings and multi-linestrings
2014-04-04 16:16:43 +03:00
Adam Wulkiewicz
47747938a6
[relate] add for now commented out ignoring of u/u turns in A/A, add some tests
2014-04-04 01:16:27 +02:00
Adam Wulkiewicz
d0dab345a8
Merge branch 'develop' into rescale_to_integer
2014-04-04 00:23:36 +02:00
Adam Wulkiewicz
fd5bd13705
[relate] added more tests for non-simple A/A with holes
2014-04-04 00:22:06 +02:00
Menelaos Karavelas
d08a0b1ad3
[set ops] removing duplicate turns is disabled now; no need for this, after Adam's fix;
2014-04-03 13:12:11 +03:00
Adam Wulkiewicz
8cb6366bb4
Merge branch 'develop' into feature/relate
2014-04-03 12:11:22 +02:00
Menelaos Karavelas
91d094673b
Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops
2014-04-03 13:05:16 +03:00
Adam Wulkiewicz
ca0c8b97df
[get_turns] Fix turns dumplication for L/L.
...
Change the ignoring check calculation in get_turn_info_for_endpoint.
Add additional parameters to the second version of collinear_opposite<>::apply() defining if the pk and/or qk are valid (in other words current segment is NOT the last one).
Also make ignoring check for last endpoint in L/A more clear.
2014-04-03 11:58:50 +02:00
Menelaos Karavelas
6eed104318
[set ops] removed my name from the copyright header
2014-04-03 08:48:48 +03:00
Menelaos Karavelas
b49a67fd29
[set ops] remove code for removing extra points
2014-04-03 04:02:04 +03:00
Menelaos Karavelas
8f46bb45e8
[set ops] remove debug code; code is called from unit tests
2014-04-03 03:55:04 +03:00
Menelaos Karavelas
dd13023f5f
[set ops] remove print-outs inside the file
2014-04-03 03:46:37 +03:00
Menelaos Karavelas
b88b4e3d71
[set ops] re-arranged code a bit; moved tests from algorithms/detail/overlay/linear_linear.hpp to currect branch
2014-04-03 03:43:11 +03:00
Menelaos Karavelas
2d1eaf2ef3
[set ops] better/shorter implementation for follow of L/L geometries; fix bug in previous code (linestrings in multilinestrings that had no turns where not reported in difference)
2014-04-03 02:54:33 +03:00