Commit Graph

2201 Commits

Author SHA1 Message Date
Menelaos Karavelas
8a23c01061 [test][distance] add common code for distance unit tests 2014-05-08 15:02:49 +03:00
Menelaos Karavelas
319f9a7b83 [test][algorithms] add new unit tests for distance in Jamfile 2014-05-08 13:46:31 +03:00
Menelaos Karavelas
302c25280d [distance] add unit tests for all geometry combinations 2014-05-08 13:45:10 +03:00
Menelaos Karavelas
cdd4bbc1aa Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-05-08 02:01:53 +03:00
Adam Wulkiewicz
dffd4a4f64 Merge pull request #22 from mkaravel/feature/setops
Feature/setops
2014-05-07 11:58:11 +02:00
Adam Wulkiewicz
8eefe4d3ba [equals] Add missing copyright info 2014-05-06 19:00:28 +02:00
Adam Wulkiewicz
8bb1d98aaf [equals][relate] Add equals() Ls/MLs, MLs/MLs. Fix relate(L/L).
Also use relate() in equals(Ls,Ls) because collect_vectors() approach doesn't work properly for non-simple or even opposite/reversed Linestrings.

Fix how 'u' is handled in relate() in the edge case when there are more 'u' operations in the same point, also when 'u' is on the first endpoint followed by 'i' on the same IP.

Add tests for equals() and relate().
2014-05-06 16:18:05 +02:00
Menelaos Karavelas
321d12c56a [test][set ops L/L] add two more test cases with spikes (examples sent by Adam on the BG mailing list) 2014-05-05 14:45:26 +03:00
Menelaos Karavelas
606295db4a [test][set ops L/L] add more test cases for difference and intersection of linear geometries; the geometries in these test cases have spikes 2014-05-05 12:08:36 +03:00
Menelaos Karavelas
a73ce5fbd6 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-05-05 10:23:45 +03:00
Adam Wulkiewicz
aea578c602 [get_turns] Fix turn operation is_collinear values for L/L and L/A.
is_collinear for the first endpoint of L is now unified and is always equal to FALSE.

Add tests of is_collinear. It is tested by passing 4th and 5th char in the expected turn string (= means collinear, + means non-collinear), e.g. "mxi=+" for L/L means that L1 ends in this IP and was collinear before meeting the Point, L2 is going "inside" intersection and wasn't collinear before.

Replace method_and_operation_replacer with turn_transformer.
2014-05-04 22:31:13 +02:00
Adam Wulkiewicz
47d581304e [relate][test] Enable tests for 2-Point degenerated Linestrings 2014-05-03 13:57:08 +02:00
Adam Wulkiewicz
8775e65b20 [get_turns] Add tests for t-spikes vs collinear internal pt for L/L 2014-05-03 04:11:22 +02:00
Adam Wulkiewicz
7192e6cbf6 [get_turns] Add more tests for t-spikes for L/L 2014-05-03 04:02:44 +02:00
Adam Wulkiewicz
d4d7bf9657 [get_turns] Fix the generation of some special cases of touch-spike-turns for L/L and L/A 2014-05-03 02:40:21 +02:00
Adam Wulkiewicz
288c7e6980 [get_turns] Fix for L/L spike vs. endpoint for the same direction segments. Add failing test cases for spikes touching internal point 2014-05-01 12:37:54 +02:00
Menelaos Karavelas
542278e42c Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-04-30 22:06:13 +03:00
Menelaos Karavelas
c2bf14e1c3 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-04-30 22:05:09 +03:00
Adam Wulkiewicz
566957de29 [test][get_turns] Add failing test cases for L/L 2014-04-30 12:57:39 +02:00
Menelaos Karavelas
c5c22d720c [is_valid / is_simple] move files one directory level up (ommit the ogc directory);
move code one namespace up (ommit the ogc namespace);
2014-04-30 12:34:52 +03:00
Menelaos Karavelas
d7c6c39182 [test][difference L/L] add a couple more test cases of geometries with spikes 2014-04-30 12:09:37 +03:00
Menelaos Karavelas
f605bbc7d1 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-04-30 01:27:23 +03:00
Menelaos Karavelas
2b93a1e390 [test][is_simple] more test cases for linear geometries; add missing includes; 2014-04-29 20:03:12 +03:00
Menelaos Karavelas
342d7d2a45 [test] add missing includes; fix wrong result with empty multilinestring 2014-04-29 20:02:14 +03:00
Adam Wulkiewicz
d682a74c1b [extensions/dissolve] Fix compilation error - pass segment_ratio<> to traversal_turn_info<>. Remove mistankenly commited test change 2014-04-29 13:19:11 +02:00
Adam Wulkiewicz
d44e1a1e01 [get_turns][extensions/dissolve] Fix VS compilation error (STATIC_ASSERT + template). Add not_implemented<> info to extensions/dissolve. 2014-04-29 13:06:04 +02:00
Menelaos Karavelas
f5589c6ebf Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-04-28 18:11:38 +03:00
Menelaos Karavelas
b4774ff964 [is_valid] implementation of OGC's is_valid for pointlike and linear geometries; moved unit tests to test/algorithms/ogc directory; 2014-04-28 18:08:47 +03:00
Adam Wulkiewicz
2349c817e2 [get_turns] Fix turns generation for double collinear spikes.
Add check if a spike Point is realy an IP.
2014-04-28 12:21:06 +02:00
Menelaos Karavelas
82ce56765d [test][set ops] separate test with duplicate points as different test cases; add test cases with spikes; 2014-04-28 12:07:56 +03:00
Menelaos Karavelas
f25e0c2d7e [test][set ops] separate tests with multiple points as different test cases 2014-04-28 12:07:08 +03:00
Menelaos Karavelas
333cfdccfb [turns] rename less functor from less_seg_dist_other_op to less_seg_fraction_other_op (to indicate that the fraction comparison is now used) 2014-04-28 10:29:45 +03:00
Adam Wulkiewicz
7615ac3392 [get_turns] Add template parameters to side_calculator<> defining types of all points.
It is possible to use side_calculator<> with Points of various types without the conversion.
2014-04-26 15:27:53 +02:00
Adam Wulkiewicz
b682b8996b [test] Add intersection test for 1-3d boxes 2014-04-26 14:23:35 +02:00
Adam Wulkiewicz
1da9113046 [relate][get_turns] Support spikes for Linear in relate(L/A). Fix errors in get_turns for L/L and L/A.
relate_linear_areal:
handle non-endpoint x-c turns pair generated for a collinear spike.

relate/follow helpers:
fix turn_on_the_same_ip to use fraction instead of dimension.

get_turns:
L/L and L/A - use base_turn_handler::assign_point() to set fractions properly for collinear-opposite spikes.
L/A - fix the condition in calculate_spike_operation() used to check if a spike goes into the interior or exterior.
2014-04-24 23:49:36 +02:00
Adam Wulkiewicz
b4b902ac85 [get_turns] Add the support for spikes for Linear Geometry in get_turns_linear_areal 2014-04-24 18:41:37 +02:00
Adam Wulkiewicz
85b7589bb1 [geometry] Merge develop with feature/relate, resolve conflicts 2014-04-24 00:37:46 +02:00
Adam Wulkiewicz
babe91b210 [relate][get_turns] Add the support for spikes in relate(L/L). Fix errors in get_turns L/L.
Some asserts are invalid when 'x' operation can be somewhere in the middle (boundary_checker).
boundary_checker::is_boundary() function removed since it's not used anywhere.
Errors in get_turns are related to the handling of touches turn. t,i/i must be handled and is_collinear must be set in operations for spikes.
2014-04-23 23:43:00 +02:00
Adam Wulkiewicz
973e5a58bc [get_turns] Add handling of spikes for L/L for endpoints 2014-04-23 22:09:00 +02:00
Adam Wulkiewicz
db318225f3 [touches] Add the implementation for Box/Box 2014-04-23 16:33:43 +02:00
Adam Wulkiewicz
e351063b9d Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-23 14:53:11 +02:00
Adam Wulkiewicz
f9c51246c2 [touches][relate] Replace use_relate with relate_base<> for automatic support generation. Also implement static_mask_touches_type<> as 2 parameter template. 2014-04-23 14:53:04 +02:00
Barend Gehrels
2bfede47f3 updated tests due to changes in rescale_to_integer branch 2014-04-23 13:30:00 +02:00
Barend Gehrels
dc2993ae3a Merge branch 'develop' into rescale_to_integer
Conflicts:
	include/boost/geometry/algorithms/detail/relate/turns.hpp
	include/boost/geometry/algorithms/touches.hppq
2014-04-23 13:26:59 +02:00
Adam Wulkiewicz
9ee78e4686 [get_turns] Handle m spike for L/L, add more tests 2014-04-23 12:53:36 +02:00
Adam Wulkiewicz
3fc8acc3f9 [get_turns] Add the generation of spike IPs for L/L non-endpoint touching and collinear-opposite segments 2014-04-22 16:11:04 +02:00
Barend Gehrels
c3bd204708 [remove_spikes] Fixed polygons consisting only of a spike.
If so, spike is now removed and only one point is left.
2014-04-21 19:44:42 +02:00
Adam Wulkiewicz
12797dbfb7 [get_turns][relate] Handle spikes for L/L !opposite collinear and equal turns.
2 Turns are generated for a spike, one with operation_blocked the second one with operation_intersection.
relate_linear_linear is not working yet, for now it is only ensured that boundaries will not be checked for those turns, which would result with assert failure.
TODO: opposite collinear and equal, touches c/c and endpoints intersecting a spike + the adaptation of relate(L,L).
2014-04-20 01:36:08 +02:00
Barend Gehrels
2077f81164 Merge branch 'rescale_to_integer' of github.com:boostorg/geometry into rescale_to_integer 2014-04-19 20:01:16 +02:00
Barend Gehrels
d54ced58d4 Use smallest of the segment_ratios to calculate the intersection point,
w.r.t. either segment a or segment b.
This results in small differences in the unit test for difference, which are
checked visually and/or compared with other output. In these cases it is
an enhancement
2014-04-19 19:59:14 +02:00
Adam Wulkiewicz
0d01847701 [relate][test] Add tests for consistency check (overlapping and Point-sized Lss) 2014-04-18 14:58:29 +02:00
Adam Wulkiewicz
a99fda5362 [relate] Fix L/L : handling of MLs containing overlapping, collinear Linestrings.
It's also consistent with the behavior for Point-like Linestrings.

E.g. some MultiLinestring may have boundary and interior in the same point:

Ls1:
  |--------------|
MLs2:
  |------------|
|------|

In this case the current version of the algorithm will set BB=0 and BI=0.
2014-04-18 14:43:07 +02:00
Adam Wulkiewicz
89955b787b [get_turns][relate] Handle Point-size Linestrings
Point-size Linestring is a linestring containing exactly 2 equal points.

Add generation of positions for degenerated turns, non-degenerated segments in get_turns_linear_linear.
The code should be polished after the addition of info about the degeneration of segments into Turns.
2014-04-18 02:22:33 +02:00
Adam Wulkiewicz
a0d03ed4cf [test] Divide relate() test into several smaller ones.
The intention is to prevent creation of too big files in MinGW.
Move predefined Geometries for relops from test_relate.hpp to predef_relop.hpp
Move test_geometry<> defined in relate.cpp to test_relate.hpp
2014-04-17 13:55:28 +02:00
Adam Wulkiewicz
b87400d822 [test][within] Divide within() test into several smaller files.
The intention is to prevent creation of too big files in MinGW.
2014-04-17 13:30:51 +02:00
Menelaos Karavelas
14df2155d2 [test][set ops] remove linking dependency with Boost.Test for P/P and L/L unit tests for union 2014-04-16 12:51:07 +03:00
Barend Gehrels
d3876c017f Removed dependancy on linking with Boost.Test, using header only 2014-04-16 11:18:46 +02:00
Adam Wulkiewicz
4a4dbf4512 [relate][touches] Implement touches() for L/L and L/A using relate(), fix error in L/A.
Enable touches() for other pairs of Geometries.
Implement ready-to-use in the implementations of relate() less comparators of operations.
Change the less comparator for L/A.
Fix: handling of the entry/interior for some turn with MultiID which comes before union for some other turn with different MultiID.
Finish the support for boost::mpl::vector<> as a complex StaticMask.
2014-04-15 16:28:35 +02:00
Menelaos Karavelas
70a5fafba9 [test][algorithms][set ops] replace BOOST_CHECK by BOOST_CHECK_MESSAGE and in case of error output the two geometries, the expected and the computed results 2014-04-14 10:36:12 +03:00
Menelaos Karavelas
1c301e7503 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-04-14 03:05:01 +03:00
Adam Wulkiewicz
0631d4ca52 [test][touches] remove invalid #include in multi_touches test 2014-04-12 03:19:11 +02:00
Adam Wulkiewicz
d7b7df8614 [within][covered_by] Add the support for Areal geometries for within() and all OGC geometries for covered_by().
Also the specializations for Multi Geometries was moved from geometry/multi/algorithms to geometry/algorithms. They're now in one place.
The default strategies are point_in_point for PointLike, winding<> for PointLike/AnyGeometry, relate for L/L, L/A and A/A.
Point/MultiGeometry version now uses point_in_geometry directly which implements the correct behavior - this fixes the wrong handling of MultiLinestrings (boundary point of a Linestring may not be a boundary point of a MultiLinestring which contains it).
2014-04-12 01:40:27 +02:00
Menelaos Karavelas
4b7549a39a [test][algorithms] do linking of the unit test framework on a per-unit-test basis 2014-04-11 00:04:40 +03:00
Menelaos Karavelas
b9ea14b76d [test][algorithms] modify Jamfile to work with unit tests for P/P and L/L set ops (need to require that the unit test framework library is available for linking) 2014-04-10 23:39:10 +03:00
Menelaos Karavelas
b88dbfb0cd [test][get_turns] replace AssignPolicy by assign_policy 2014-04-10 15:46:43 +03:00
Menelaos Karavelas
b03318a647 [test] fixed header macros for the from_wkt.hpp file 2014-04-10 15:24:46 +03:00
Menelaos Karavelas
63365a8208 [test][set ops] clean up code; finish up unit test for L/L union; 2014-04-10 15:13:02 +03:00
Menelaos Karavelas
6646470a55 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops-develop 2014-04-10 10:03:43 +03:00
Menelaos Karavelas
fc6ae619ac [test][algorithms] add tests for set operations of L/L and P/P geometries; update copyright header; 2014-04-10 09:25:30 +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
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
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
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
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
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
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
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
be2795a6f2 [set ops] add missing include 2014-04-03 02:51:16 +03:00
Menelaos Karavelas
5be2682000 [set ops] rename test_set_ops_common.hpp to test_set_ops_linear_linear.hpp 2014-04-03 02:50:30 +03:00
Menelaos Karavelas
4295f0bcf7 [set ops] add more examples with duplicate points and zero length linestrings 2014-04-03 00:36:44 +03:00
Menelaos Karavelas
df33e8a92a [set ops] modify way of calling multilinestring_equals (due to changes in multilinestring_equals) 2014-04-03 00:08:11 +03:00
Menelaos Karavelas
a806cd0419 [set ops] change macro used for debugging 2014-04-03 00:04:50 +03:00
Menelaos Karavelas
b0e2521fa1 [set ops] allow equality for multilinestrings with duplicate linestrings 2014-04-03 00:02:13 +03:00
Menelaos Karavelas
4ceea13cf4 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-04-02 21:47:09 +03:00
Adam Wulkiewicz
2f9f454334 [get_turns] fix for MultiLinestrings containing Ls with equal points
In this case no sections were generated for those "empty" Linestrings but if there were some sections already generated they could be marked as last_non_duplicated.
2014-04-02 20:21:32 +02:00
Adam Wulkiewicz
47da24242c [relate] add code ignoring i/i turns, comment out some unneeded code in areal_areal 2014-04-02 20:14:34 +02:00
Adam Wulkiewicz
8c700e9f31 [relate] handle non-simple Polygons in A/A, NOT FULLY SUPPORTED
Not supported: i/i, non-intersecting rings
2014-04-02 14:10:36 +02:00
Menelaos Karavelas
598b6a51cf Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-04-02 11:09:17 +03:00
Menelaos Karavelas
39a521934d [intersection] guard print-outs within a #ifdef/#endif block 2014-04-02 10:31:43 +03:00
Adam Wulkiewicz
f2fea86f7e [relate] fix special case of L/L and L/A - going out and in on the same point but with different segment.
Linestring going into the exterior of the second geometry and then going inside on the same point. In this case the exterior wasn't taken into account. Now in addition to the Point, seg_id is checked. The check should also be faster since integral segment ids are checked before Points.
exit_watcher methods now take Turn instead of Point, seg_id and other_id.
Also added some tests for non-simple A/A.
2014-04-01 22:20:29 +02:00
Menelaos Karavelas
ffdb1d34f0 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops
Conflicts:
	include/boost/geometry/algorithms/detail/relate/less.hpp
2014-04-01 04:05:50 +03:00
Menelaos Karavelas
4101d4368f [intersection] fix expected intersection in two examples in unit test 2014-04-01 03:47:41 +03:00
Barend Gehrels
ea4408dbdb Fixed renaming in test 2014-03-30 15:17:07 +02:00
Barend Gehrels
2521ce2193 Moved GEOS testcases from traverse to union/intersection/difference 2014-03-30 14:54:24 +02:00
Barend Gehrels
46125dccb5 Removed distance (replaced by fraction) and calculate_distance_policy file, not used anymore 2014-03-30 13:50:20 +02:00
Barend Gehrels
77703f439e [unit tests] Fixed traverse cases changed by new approach 2014-03-30 13:03:36 +02:00
Adam Wulkiewicz
b6bf7038c9 Merge branch 'develop' into feature/relate 2014-03-29 23:46:22 +01:00
Adam Wulkiewicz
fc1a2545a5 [get_turns] Fix test for L/L and L/A - missing functions in expected_pusher range 2014-03-29 14:41:51 +01:00
Adam Wulkiewicz
2a30c8ac0d [geometry] Fixes after merge in get_turns - use of arrivals, compilation fixes in relate, use of fractions for sorting turns in relate 2014-03-28 14:55:28 +01:00
Adam Wulkiewicz
7df83d69a7 [relate] add support for no-IP casesin A/A, fix for_each_disjoint_geometry_if for Multi Geometries.
Fix a bug in for_each_disjoint_geometry_if resulting in assert failure if no turns are generated. This affects L/L, L/A and A/A.
Enable all combinations of Areal geometries.
Add ignoring of empty disjoint geometries in L/A and A/A.
Add tests for disjoint geometries.
2014-03-27 16:35:43 +01:00
Adam Wulkiewicz
d4418204ec [relate] add support for non-simple non-equal Polygons in A/A.
Currently simple interrupt policy is used.
This approach works is there are IPs, Polygons are simple and not equal.
2014-03-27 00:30:43 +01:00
Adam Wulkiewicz
77c7317cb1 [relate][get_turns] move single_geometry to bg::detail, fix get_turn_info test
also create a preliminary version of relate::areal_areal (copied from linear_areal)
in get_turn_info test mutable begin() and end() because it seems that Range can't handle immutable Ranges
2014-03-26 18:37:31 +01:00
Barend Gehrels
40f8174da4 [geometry] After merge, updated test_get_turns by providing segment_ratio_type 2014-03-26 14:38:43 +01:00
Barend Gehrels
da7c741eb8 Merge branch 'develop' into rescale_to_integer
Conflicts:
	include/boost/geometry/algorithms/detail/overlay/get_intersection_points.hpp
	include/boost/geometry/algorithms/detail/sub_geometry.hpp
	include/boost/geometry/algorithms/disjoint.hpp
	include/boost/geometry/algorithms/touches.hpp
	include/boost/geometry/algorithms/within.hpp
	include/boost/geometry/policies/relate/intersection_points.hpp
	test/algorithms/intersection.cpp
	test/algorithms/overlay/get_turn_info.cpp
2014-03-26 13:33:15 +01:00
Adam Wulkiewicz
830a073c0d Merge branch 'feature/relate' into develop 2014-03-25 15:10:48 +01:00
Adam Wulkiewicz
ccbc15b8a1 [get_turns][relate] handle doubled points in relate L/L and L/A
add info about the first/last non-doubled section to sectionalize
modify get_turns() to pass info about the first/last segment to TurnPolicy::apply()
modify parameters of TurnPolicy::apply()
add searching for the next non-equal point in relate L/A when the segment of Linear must be checked if it starts in the interior or exterior of the Areal
add tests for relate and within
add relate L/A to Jamfile
2014-03-25 00:29:25 +01:00
Adam Wulkiewicz
b6fc144de7 [relate][within] add tests for Linestrings with duplicated points 2014-03-24 19:27:35 +01:00
Adam Wulkiewicz
5316d1f2ad [geometry] replace sub_geometry::get() by sub_range(), fix invalid #includes 2014-03-23 17:16:56 +01:00
Adam Wulkiewicz
025bd3b2bc [relate] overall cleanup, group_dim replaced by topological_dimension, group_tag by tag_cast, range moved to util/range.hpp, some temporary code commented out 2014-03-23 15:17:05 +01:00
Barend Gehrels
6e36e1b8f1 [geometry] Added comment for ticket #9756 it was invalid, polygons were not closed 2014-03-23 00:05:57 +01:00
Barend Gehrels
ad718d333d [geometry] added testcase for ticket #9756 which is already fixed
in this branch
2014-03-22 23:53:52 +01:00
Barend Gehrels
3b8f444e6c [geometry] added test to intersection unit test for issue reported at
2014/03/21 by 7415963@gmail.com
The issue is not fixed yet.
2014-03-22 23:48:07 +01:00
Adam Wulkiewicz
5eec228f10 [relate][get_turns] the code from handle_spike from get_turn_info_ll enclosed in spike detector (NOT FULLY WORKING) 2014-03-22 11:21:49 +01:00
Adam Wulkiewicz
21c42ed87e [within][get_turns] implement within() using relate() for L/L and L/A. Add some basic/NOT_FULLY_WORKING handling of collinear spikes for get_turns(L/L) 2014-03-21 17:24:21 +01:00
Menelaos Karavelas
e65e0718ad Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-03-20 11:21:00 +02:00
Adam Wulkiewicz
f2b4ced41b [relate] add test for Areal boundary equal to more than one Ls in MLs forming a linear ring 2014-03-20 01:06:15 +01:00
Adam Wulkiewicz
f9c0a09c38 [relate] implement proper handling of multiple rings while checing for equality with the linestrings, enable relate() for all ls- and poly-based geometries 2014-03-20 01:03:34 +01:00
Barend Gehrels
616e678ef1 [geometry] added first version of detail intersection_side function
To be used for buffer where robust info is needed of side of IP's
2014-03-19 17:01:02 +01:00
Menelaos Karavelas
0a2f52ad93 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops
Conflicts:
	include/boost/geometry/algorithms/detail/overlay/get_turn_info_for_endpoint.hpp
	include/boost/geometry/algorithms/detail/relate/turns.hpp
2014-03-19 17:25:19 +02:00
Menelaos Karavelas
8c2e7ea282 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-03-19 17:12:41 +02:00
Menelaos Karavelas
9ae6200a9d [intersection] add a couple more test cases that contain duplicate points or linestrings with zero length; 2014-03-19 17:11:41 +02:00
Adam Wulkiewicz
e0179e67e0 [relate] support ccw and open geometries, use closeable_view and reversable_view if needed 2014-03-18 23:27:18 +01:00
Adam Wulkiewicz
6106fe6d1b [relate] change less_seg_dist_op comparator to support multipolygons 2014-03-18 11:43:35 +01:00
Adam Wulkiewicz
173371265f [relate] fix II for LS on boundary going out and in to the boundary of another ring on the same IP 2014-03-18 00:52:20 +01:00
Adam Wulkiewicz
e461f1003b [relate] fix duplication of points for BACK in L/A 2014-03-17 23:45:28 +01:00
Adam Wulkiewicz
3336212aaa [relate] fix sorting by distance in less_seg_dist_op 2014-03-17 15:52:32 +01:00
Adam Wulkiewicz
d5935134ef [relate] add interrupt policy for L/A 2014-03-17 15:23:35 +01:00
Menelaos Karavelas
4039c28497 removed commented lines as per Bruno's suggestion 2014-03-15 11:52:04 +02:00
Menelaos Karavelas
429b5e0037 implementation and unit test for bg::append for multi-linestring and multi-polygon 2014-03-14 23:04:01 +02:00
Adam Wulkiewicz
19837bbe03 [relate] L/A: fix generation of matrix elements for L collinear to boundary of A 2014-03-14 17:54:17 +01:00
Adam Wulkiewicz
8bd4efbc26 [relate] add support for non-simple polygons 2014-03-14 16:57:10 +01:00
Adam Wulkiewicz
80b1c54b65 [relate][get_turns] fix turn generation for last LS endpoint in get_turns(L,A), in relate(L,A) handle Linestrings starting from the inside 2014-03-14 13:05:51 +01:00
Adam Wulkiewicz
a6b0a32846 [relate] handle simple polygons in relate(L,A), remove some redundant code from L/L and L/A, add tests 2014-03-13 14:54:42 +01:00
Adam Wulkiewicz
97edf7da65 [test/get_turns] expected_pusher is now using FwdRange concept, some tests added 2014-03-13 12:05:06 +01:00
Adam Wulkiewicz
4f32a3743f [relate][get_turns] added not yet finished support for relate(L,A), changed operations generated by get_turns(L,A) for collinear segments of Areal geometry, fixed errors in relate(L,A) 2014-03-13 01:08:57 +01:00
Adam Wulkiewicz
3c4ed4e396 Merge branch 'feature/relate' of github.com:boostorg/geometry into feature/relate 2014-03-12 19:18:20 +01:00
Adam Wulkiewicz
924d222e7f [relate][get_turns] fixed relate(L/L) error for collinear segments and a self-intersection in the middle, added is_collinear to turn_operation_linear, added setting of is_collinear to get_turns(L/L), fixed logic error in turns generation for endpoint-internal IP 2014-03-12 19:18:11 +01:00
Adam Wulkiewicz
3142975b72 [relate] supported ORed run-time masks 2014-03-12 12:39:20 +01:00
Menelaos Karavelas
d9e741c106 implemented set operations for pointlike-pointlike geometry combinations;
added unit tests for union, intersection and difference for pl-pl pairs;
2014-03-12 11:19:44 +02:00
Adam Wulkiewicz
8e9a59bac3 [relate] helpers like segment_watcher, exit_watcher, etc. moved to a separate file, implemented preliminary version of L/A (commented out for now), found bug in L/L, added failing tests 2014-03-11 18:06:47 +01:00
Adam Wulkiewicz
09c41cb171 relate() - const MatrixOrMask may be passed to the function, the actual matrix is now stored in the result handler 2014-03-08 19:59:39 +01:00
Adam Wulkiewicz
1e6da76527 relate() implemented different interface, added support for complex masks passed in boost::tuple 2014-03-08 19:31:06 +01:00
Adam Wulkiewicz
b6ad82a0c2 relate() naming of results changed, added de4im matrix 2014-03-07 19:41:54 +01:00
Menelaos Karavelas
9862612b3f changed color of isolated intersection points 2014-03-05 16:51:29 +02:00
Menelaos Karavelas
bec98a3b1c added one more test case 2014-03-05 16:51:08 +02:00
Menelaos Karavelas
751297770c added svg output support for union linear/linear;
tester for union linear/linear has now a static apply method instead of operator();
2014-03-05 13:36:41 +02:00
Menelaos Karavelas
5648d4133d made parts of the tester public and private; 2014-03-05 13:25:51 +02:00
Menelaos Karavelas
39a8f7dfda added support for drawing isolated points generated by the intersection set operation;
added svg for intersection of linear geometries;
tester is not a static apply method instead of operator() (intersection of linear geometries);
2014-03-05 13:24:01 +02:00
Barend Gehrels
921c7d2f14 [geometry] splitted file zoom_to_robust.hpp into several files:
- get_max_size
- rescale_policy
- robust_type
- get_rescale_policy
2014-03-05 12:01:43 +01:00
Menelaos Karavelas
9341e7dd50 added support for svg output;
changed tester to have a static apply method instead of an operator();
2014-03-05 12:57:42 +02:00
Menelaos Karavelas
178e7f3079 added support for svg output;
tester now has a static apply method intead of operator();
2014-03-05 12:51:26 +02:00
Menelaos Karavelas
f1b3e63d6b added support for svg output for set operation;
tester now has static apply method instead of operator();
2014-03-05 12:45:13 +02:00
Menelaos Karavelas
a40f958e69 changes according to Barend's review 2014-03-05 12:11:05 +02:00
Adam Wulkiewicz
9ff0624b41 relate(L,A) added preliminary implementation, for now working only for disjoint geometries 2014-03-04 17:37:12 +01:00
Menelaos Karavelas
925fb9e35b common functionality for set operation testing for linear geometries 2014-03-04 16:28:28 +02:00
Menelaos Karavelas
bae11b04c9 fixes from copy/paste from difference unit test 2014-03-04 16:27:52 +02:00
Adam Wulkiewicz
0147d4d2c3 get_turns(L,A) tests added 2014-03-04 14:36:42 +01:00
Menelaos Karavelas
6a87866339 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-03-03 21:37:30 +02:00
Adam Wulkiewicz
02cdc305d3 get_turns(L,A) - fixed turns generation for endpoints of collinear front/back segments, added some tests 2014-03-03 19:21:12 +01:00
Adam Wulkiewicz
ebaf26c0ff get_turns(L,A) handled front endpoint 2014-03-03 13:36:23 +01:00
Adam Wulkiewicz
be1ac99a82 get_turns(L,A) added, the endpoints are NOT properly set yet! 2014-02-28 18:59:30 +01:00
Adam Wulkiewicz
18a29bac69 some comments changed 2014-02-28 13:00:50 +01:00
Menelaos Karavelas
1c4ecf5b94 new implementation for union, following discussion with Barend;
updated unit test for union a bit;
2014-02-27 16:46:22 +02:00
Adam Wulkiewicz
e8b5e64f2b added empty test for get_turns(L,A) and some small changes like naming, comments. to_svg() (test debug helper tool) is now using turn_info defined in relate::turns, also traversal info output commented out. 2014-02-27 15:20:51 +01:00
Menelaos Karavelas
52c2ce2df9 added example used by Barend in his email to discuss the output of set operations 2014-02-26 12:55:56 +02:00
Barend Gehrels
1236aad099 [geometry] Added testcase for mailing list report 2014/02/23 2014-02-26 11:38:27 +01:00
Adam Wulkiewicz
0a70310124 get_turns(L,L) added turn_operation_linear containing info about the position of the IP in the segment 2014-02-25 13:39:09 +01:00
Menelaos Karavelas
8d510d140a added a couple of additional test cases 2014-02-25 02:07:08 +02:00
Menelaos Karavelas
c22b3bedfb minor change in output 2014-02-25 01:36:49 +02:00
Menelaos Karavelas
4030dd7c4b Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-24 22:20:35 +02:00
Menelaos Karavelas
ca4aa6a91e the unit test for union of linear geometries; not finished yet 2014-02-24 22:20:24 +02:00
Menelaos Karavelas
8ab19b69c3 tester for union of linear geometries 2014-02-24 22:19:10 +02:00
Adam Wulkiewicz
00941b7d50 Implemented relate(MultiPoint, MultiPoint), added detail::relate::less comparing Point types with different coordinate_type, added some TODO notes regarding possible optimizations 2014-02-24 17:47:29 +01:00
Menelaos Karavelas
e11dcd9bbf intersection now includes isolated intersection points; exact behavior depends on the definition of related macros;
updated unit test to test for isolated intersection points as well;
2014-02-23 11:47:13 +02:00
Menelaos Karavelas
0b38816c0d finished updating test cases for all three set ops (intersection, difference, sym difference);
added a few more test cases;
using macros properly within unit tests right now;
2014-02-22 15:27:40 +02:00
Menelaos Karavelas
c00f46550b Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-02-22 15:24:55 +02:00
Menelaos Karavelas
b0e5a71464 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-22 15:24:24 +02:00
Adam Wulkiewicz
a68d9f5855 fixed GCC compilation errors 2014-02-22 04:29:11 +01:00
Adam Wulkiewicz
600174b45d added relate() test to the Jamfile 2014-02-22 01:03:48 +01:00
Menelaos Karavelas
a7e2d325f0 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-22 00:10:30 +02:00
Adam Wulkiewicz
0fd875fb63 relate() added Point-MultiPoint, point_point moved to the separate file, Geometries sequence is reversed if needed to not duplicate the code - for this Transpose is also used as the parameter to set<>(result) 2014-02-21 19:25:27 +01:00
Adam Wulkiewicz
89e412f5b4 added test for relate(Pt,Pt), added a TODO in relate::linear_linear 2014-02-21 17:56:40 +01:00
Adam Wulkiewicz
6482716689 relate() Finished the implementation for Point/Geometry, added topology_check util, added tests 2014-02-21 17:51:37 +01:00
Adam Wulkiewicz
93b82b734d relate() added interruption_enabled flag to policy which can be used to create optimized mask type not checking for interuption per each set<>() 2014-02-21 15:34:52 +01:00
Menelaos Karavelas
5e733de01f added print-outs for the two geometries, the intersection results for g1,g2 and g2,g1 when the output is an MLS
as well as the intersection result when the output is a multipoint
2014-02-21 13:42:54 +02:00
Menelaos Karavelas
6e8c6b2a40 added test cases for the MLS/MLS combination 2014-02-21 12:10:49 +02:00
Menelaos Karavelas
c7e215076a updated a test case to make it more floating-point robust; added one more test case 2014-02-21 11:45:40 +02:00
Menelaos Karavelas
a63b3ef7c8 added tests for the LS/MLS combination 2014-02-21 11:11:38 +02:00
Adam Wulkiewicz
a03f554e27 relate() Added the interruptable mask Result, handled arbitrary Result type in relate(), added tests for masks and interruption, fixed warning in get_turns_ll 2014-02-21 00:40:09 +01:00
Adam Wulkiewicz
d13ff170be relate(L,L) code refactored, tests added 2014-02-20 23:10:16 +01:00
Adam Wulkiewicz
9b16fdcf23 relate(L,L) handled case when several BLOCK operations were generated for the same point, fixed an error for BLOCK generated for a geometry touching the other one from the "outside" 2014-02-20 22:47:23 +01:00
Menelaos Karavelas
c6f68ac2ec finished LS/LS test cases;
added MLS/LS test cases;
2014-02-20 23:33:26 +02:00
Menelaos Karavelas
95ffb258db test cases for the LS/LS combination 2014-02-20 22:42:13 +02:00
Menelaos Karavelas
e522f4ae68 updated a few more test cases; modified testing equality of intersections (allow now two possible results that depend on the order of the intersection arguments); 2014-02-20 13:43:27 +02:00
Menelaos Karavelas
b8243c7159 unit tests for symmetric difference and intersection of linear geometries; not finished yet; 2014-02-20 12:57:14 +02:00
Adam Wulkiewicz
c2e1331270 relate(L,L) handling of 1-point linestrings replaced by simple ignoring (for now) since those are not valid geometries, the code was not removed though in case we wanted to e.g. enable it with some macro check. 2014-02-19 14:42:05 +01:00
Menelaos Karavelas
0ca5d2f13a re-arranged code so that linestrings are not transformed to multilinestrings;
added implementations for all four pairs of LS/MLS combinations;
added unit tests that were missing for new combinations;
2014-02-19 13:37:04 +02:00
Barend Gehrels
ffb1b8af61 [geometry] Fixed traverse testcase 2014-02-19 11:19:10 +01:00
Menelaos Karavelas
1f9ccb6698 rearranged and simplified test code for differences of linear geometries;
added test cases for the LS/MLS difference;
polished debug macros a bit;
2014-02-19 09:25:30 +02:00
Menelaos Karavelas
7d3fef405e Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-19 09:00:09 +02:00
Adam Wulkiewicz
b03601fab8 get_turns(L,L) fixed 2x IPs generation for a special case of collinear, opposite last Ls segment 2014-02-19 02:26:15 +01:00
Adam Wulkiewicz
99610ca124 relate(L,L) handled the rest of cases with 1-point linestrings involved, added interrupt member to relate result - it may be used to break the calculation 2014-02-16 22:23:14 +01:00
Barend Gehrels
17356d7d7d [geometry] Fix for integer-distance-point-to-polygon,
submitted by Menelaos Karavelas
2014-02-16 21:53:00 +01:00
Adam Wulkiewicz
9f54142896 relate(L,L) handled some cases with 1-point linestrings involved (if 1-PtLS is disjoint or there are other Ls in the other MLs) 2014-02-16 18:26:41 +01:00
Adam Wulkiewicz
4815e00048 relate(L,L) disjoin linestrings contained in multilinestring properly handled. In the case of disjoint linestrings almost all special cases are handled non-simple linear rings, 1-point linestrings. Linestrings containing >1 equal points are for now treated as normal linear rings, this should probably be changed. 2014-02-15 21:51:47 +01:00
Menelaos Karavelas
b1d78e1a85 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/setops 2014-02-14 09:40:41 +02:00
Menelaos Karavelas
734dcb7930 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-14 09:39:46 +02:00
Adam Wulkiewicz
790c0027a0 relate(L,L) fixed some compilation errors for MultiLinestrings, some parts of the code temporarily commented out, added failing test - currently used algorithm is analysing only those Linestrings which are intersecting the other geometry, other ones are NOT taken into account 2014-02-14 00:30:10 +01:00
Barend Gehrels
8af588045e [geometry] Fixed results for distance of integer point types point-segment
or point-linestring
2014-02-13 22:18:39 +01:00
Adam Wulkiewicz
cea2384ad6 relate(L,L) some tests added - tests for linear rings not passed, added note about the error 2014-02-13 01:54:55 +01:00
Menelaos Karavelas
90901d6e4e added a couple more test cases 2014-02-13 01:48:23 +02:00
Adam Wulkiewicz
7429694b54 relate(L,L) added checks for boundaries for the first points of ranges of G1 which are in the exterior of G2 2014-02-13 00:12:39 +01:00
Menelaos Karavelas
a1ac024c5b Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-12 18:06:37 +02:00
Adam Wulkiewicz
b943f3de26 get_turns(L,L) another special case handled 2014-02-12 16:53:06 +01:00
Barend Gehrels
d140a44bf3 [geometry] Fixed remaining unit test w.r.t. rescale policies 2014-02-12 14:13:25 +01:00
Barend Gehrels
6900fdd46b [geometry] Fixed most of the remaining unit-tests
w.r.t. rescale changes
2014-02-12 12:38:48 +01:00
Menelaos Karavelas
a366f120f7 changes in code for linear-linear geometries difference 2014-02-12 13:03:35 +02:00
Barend Gehrels
8d202fd319 [geometry] Verified compatibility with/without robust rescaling
We now have the define BOOST_GEOMETRY_NO_ROBUSTNESS to avoid rescaling
(probably should be renamed)
2014-02-12 11:45:02 +01:00
Menelaos Karavelas
fe2cfa6422 fixed the result of a test case 2014-02-12 00:23:27 +02:00
Menelaos Karavelas
0848049a10 Merge branch 'feature/relate' of https://github.com/boostorg/geometry into feature/setops 2014-02-12 00:02:27 +02:00
Adam Wulkiewicz
5bb4c45ff5 get_turns(L,L) fixed another case for opposite linestrings 2014-02-11 17:06:43 +01:00
Menelaos Karavelas
a0e56a6157 current implementation for difference of linear geometries (still a prototype);
added some copyright headers and made minor fixes;
2014-02-11 16:22:39 +02:00
Menelaos Karavelas
773331f6d9 implementation of follower for linear geometries;
added test files for difference of linear geometries;
2014-02-11 10:37:45 +02:00
Adam Wulkiewicz
4a4acf00cb [get_turns] fixed error in get_turn_info_linear_linear - invalid operations generated for the endpoint-internal IP for opposite segments 2014-02-11 02:57:39 +01:00
Adam Wulkiewicz
21dfef6f05 get_turn_info_linear_linear<>::handle_first_last() method moved to better reflect calling dependency 2014-02-11 01:30:22 +01:00
Adam Wulkiewicz
5e3223e467 fixed error in relate(), entry points seg_id replaced by other_seg_id - required for MultiLinestrings 2014-02-06 01:27:52 +01:00
Adam Wulkiewicz
c0598807db handled non-simple Linestrings, for now without spikes 2014-02-06 00:22:54 +01:00
Barend Gehrels
7c6ba53e59 [geometry] Added RescalePolicy (to get SegmentRatio) to strategy_intersection
Some creations/instances of rescale policy had therefore to be moved
2014-02-05 14:06:00 +01:00
Barend Gehrels
336f73e276 [geometry] made SegmentRatio as a template argument for turn_operations,
and therefore for turn_info and many more
2014-02-05 11:36:42 +01:00
Adam Wulkiewicz
65721a3d89 added missing get_turn parameters to get_turn_info<>::apply() in get_turn_info.cpp unit test - new TurnPolicy interface 2014-02-02 00:21:00 +01:00
Adam Wulkiewicz
87ab6f8ece fixed VS compilation errors (overlay:: removed), removed relate()-related code from get_turns_linear_linear.cpp test 2014-02-01 23:43:54 +01:00
Adam Wulkiewicz
ff9596578f Merge branch 'develop' into feature/relate 2014-02-01 13:41:53 +01:00
Adam Wulkiewicz
b9d7d7f975 changed relate() to use new turns info for linestrings, the same implementation state - does not work for self-touching Linestrings or MultiLinestrings 2014-01-31 22:13:13 +01:00
Adam Wulkiewicz
459bb46dff detail::relate::relate() result now contains correct dim(E(A) and E(B)), T is put for dimensions > 9 2014-01-29 23:37:49 +01:00
Adam Wulkiewicz
bf51c9fc87 added test for get_turns(L,L) 2014-01-29 23:12:38 +01:00
Adam Wulkiewicz
0874a880b5 Added methods replacement for some cases of non-endpoint IPs, e.g. touching c or e is replaced by m or t. Methods are set WRT IPs, not segments, i.e. if points of both intersecting segments are equal to the IP the method is e. In addition to this x/x was handled, e.g. t+x/x is replaced by e+c/c. 2014-01-29 17:24:46 +01:00
Adam Wulkiewicz
9c63a58412 added proper operations generation for non-endpoint IPs 2014-01-29 15:09:54 +01:00
Adam Wulkiewicz
b70c886f2e IP duplicates handled for endpoints 2014-01-27 16:44:11 +01:00
Adam Wulkiewicz
e7992832a9 added a few test cases 2014-01-24 20:33:51 +01:00
Adam Wulkiewicz
bd686badd7 most of the duplicated endpoints handled 2014-01-24 16:58:11 +01:00
Adam Wulkiewicz
a9f1c8e00a handled all endpoints, for now method is not set, IPs may be duplicated and invalid value is returned from handle_first_last() 2014-01-23 18:23:12 +01:00
Adam Wulkiewicz
50fe5a7e67 added copyrights 2014-01-22 22:02:22 +01:00
Adam Wulkiewicz
7e3d0571f9 fixed error in collect_vectors - vectors previously gathered for other rings were removed based on the direction of the last vector of currently analysed ring 2014-01-22 22:00:29 +01:00
Adam Wulkiewicz
3f667361d6 get_turns() for endpoints L/L started from the beginning, added copyrights info, added comments regarding segment intersection results analysis 2014-01-22 21:42:44 +01:00
Barend Gehrels
95bb6372ab [geometry] Added testcase for ticket #9563 which was already fixed in this branch
Rescaling to robust type already fixed this.
2014-01-18 18:14:51 +01:00
Barend Gehrels
e71c0c92e2 [geometry] Uncommented various testcases for traverse unit test
partly related to rescaling
2014-01-17 20:05:46 +01:00
Barend Gehrels
175032c841 [geometry] Integer coordinates are now not rescaled
which fixes corresponding tests
2014-01-17 19:58:31 +01:00
Barend Gehrels
fc681ba236 [geometry] fixes in unit tests w.r.t. rescale policy 2014-01-17 18:53:29 +01:00
Barend Gehrels
75c1010ef1 [geometry] Fixed multi testcases w.r.t. rescaling to robust 2014-01-16 19:34:02 +01:00
Barend Gehrels
f61a9da709 [geometry] Fixed testcases for overlay w.r.t. rescale to integer 2014-01-16 19:03:45 +01:00
Barend Gehrels
417b4d9450 [geometry] Pass rescale policy for get_turns test 2014-01-16 18:46:24 +01:00
Barend Gehrels
90b75b7640 Merge branch 'develop' into rescale_to_integer 2014-01-16 14:19:01 +01:00
Barend Gehrels
a7ca995be5 [geometry] Changes in debug-information 2014-01-16 14:12:37 +01:00
Adam Wulkiewicz
594d025e95 overlay:: equal<> and collinear<> used to calculate the operations for the first point of P LS in adequate cases 2014-01-09 19:36:31 +01:00
Bruno Lalande
cfba8409c5 Made transform variant-aware. 2014-01-09 09:09:56 +00:00
Bruno Lalande
efd1540b1a Change test_transform_point() to use check_transform(). 2014-01-08 22:36:49 +00:00
Bruno Lalande
be9341df70 Split test_transform_linestring into test/check (in preparation to testing variants). 2014-01-08 17:59:52 +00:00
Bruno Lalande
3019f29a5b Fixed test issue - the test was comparing out1 with itself rather than out2, and started failing when corrected because inappropriately implemented for CS transformations. 2014-01-08 17:54:17 +00:00
Barend Gehrels
5f87dfcd3b [geometry] Unit test traverse, added debug info 2014-01-08 13:51:49 +01:00
Barend Gehrels
831302112e [geometry] Added testcases or changed precisions in a few cases 2014-01-08 13:51:19 +01:00
Adam Wulkiewicz
518156a727 [geometry] begined the new implementation of handling of first and last LS point in get_turns(), for now considered cases when both LSs starts on the same segment 2014-01-07 21:46:46 +01:00
Bruno Lalande
1d561e58bd Merge branch 'feature/variants' into develop 2014-01-05 17:10:40 +00:00
Adam Wulkiewicz
2799cb867b [geometry] handled IP on the last point of LS for equal and collinear case, for the first point method may now be set to equal or collinear 2014-01-05 17:27:31 +01:00
Bruno Lalande
8d58aaf8b9 Made touches (1 param version) variant aware. 2014-01-05 15:54:14 +00:00
Adam Wulkiewicz
c1530d41f9 [geometry] handled IP for the first point of a LS when IP is equal to the second point of the first segment of the other LS to avoid generation of 2 IPs for the same point 2014-01-04 23:51:12 +01:00
Adam Wulkiewicz
def187c977 added generation of IP for the first point of a Linestring - c+c/c, c+i/u or c+u/i 2014-01-04 01:11:43 +01:00
Bruno Lalande
87a5a242f4 Made touches (2 params version) variant aware. 2014-01-02 09:34:31 +00:00
Adam Wulkiewicz
352996aa2e [geometry] added tests for intersects(Ls,Ls) for linestrings with colinear segments 2013-12-27 20:23:33 +01:00
Bruno Lalande
4919e00e2d Made simplify variant-aware 2013-12-24 22:15:15 +00:00
Adam Wulkiewicz
3d8cc8730a [geometry] added relate() test 2013-12-24 04:17:06 +01:00
Adam Wulkiewicz
8f742a692c [geometry] added self-turns output to 1-geometry to_svg() 2013-12-23 14:49:20 +01:00
Adam Wulkiewicz
eba7d26db4 [geometry] in relate() called dispatch::get_turns instead of higher level one to avoid geometries switching, added generation of SVGs for some special cases 2013-12-22 23:35:18 +01:00
Barend Gehrels
b889923619 [geometry] Take care that FP ratio (which is still used) is between 0-1 too.
If not we take the robust ratio.
This fixes case ticket_9081_15 where the intersection point was far outside
the belonging segment (causing a new spike)
2013-12-22 14:16:15 +01:00
Barend Gehrels
1a1cb4cff0 [geometry] Moved debug string 2013-12-22 14:14:37 +01:00
Barend Gehrels
9cd79d8033 [geometry] Instead of (non-rescaled) append, we clean rescaled dups afterwards.
We don't do it on the fly to avoid additional rescaling, it is done only once per point
This also changes occasionally some number-of-points in testcases (now more cleaned)
2013-12-22 14:12:40 +01:00
Barend Gehrels
e871436e30 [geometry] Slightly increased tolerance for the r.e.s. test 2013-12-22 10:56:49 +01:00
Adam Wulkiewicz
4f07087db5 [geometry] handled more cases in relate(Ls, Ls) 2013-12-22 04:00:15 +01:00
Adam Wulkiewicz
106f3da5ae [geometry] fixed some errors in relate(Ls, Ls): checked terminal points of both linestrings, treated touch with x/x as ii 2013-12-21 02:41:48 +01:00
Adam Wulkiewicz
382e975f2f [geometry] added test file for relate(), fixed error in linear_linear, added tag-dispatched detail::relate() 2013-12-21 01:49:40 +01:00
Adam Wulkiewicz
da524695c6 [geometry] added relate() test implementation for Point-Geometry, Geometry-Point and Linestring-Linestring. The least one is not finished yet. 2013-12-20 19:58:08 +01:00
Barend Gehrels
e0d9036aef [geometry] removed segment_equal, now all collinear go to one fuction.
Function now renamed to segments_collinear, and the other to segments_crosses

We calculate opposite now only in "direction", where it is used to pass through.
That one also checks on equality

Test 5103 now (or with previous action for touches) also passes again.
2013-12-20 18:50:08 +01:00
Adam Wulkiewicz
3f7ef7b739 [geometry] added within(Ls, Ls) tests for overlapping linestrings 2013-12-20 01:41:35 +01:00
Adam Wulkiewicz
907a260b01 [geometry] added within(Ls, Ls) 2013-12-20 01:28:32 +01:00
Barend Gehrels
4a5b85c870 [geometry] Collinear touch now also uses new unified method
This fixes the holes_intersect_and_touch case
NOTE: method should now be renamed, not ...two_intersection_points
2013-12-19 22:38:52 +01:00
Barend Gehrels
9a9efcff89 [geometry] Work in progress: factor (rational) instead of distance
This is a large commit. It replaces enriched.distance with factor. Factor
is based on integer calculations, calculated in cart_intersect, from the
passed robust points, so always trustable.

We had to do this because without certain tests failed because of FP
problems with distance (calculated with FP).

This commit also greatly simplifies relate_collinear, where most things and checks
are replaced by simple unified calculations. This is also based on robust
fractions (but could have been done earlier).

Many (but not all) testcases commented in previous commit are now uncommented
again, they now work thanks to the fractions. There are also testcases
uncommented which now work correctly using clang/Linux

This commit breaks compiling disjoint (because of rescale), and running buffer
(also because of rescale), and some more (probably all because or rescaling),
this has to be fixed soon after.
2013-12-18 19:19:10 +01:00
Adam Wulkiewicz
2b2ceadfc6 [geometry] fixed within(Box, Box) for Boxes with overlapping boundaries - OGC conformance 2013-12-16 00:42:15 +01:00
Barend Gehrels
107621943d [geometry] Use robust determinant for comparisons
This breaks one extra testcase which should be verified later
2013-12-14 19:49:35 +01:00
Barend Gehrels
c173233efa [geometry] Propagated rescale_policy further / from earlier phase 2013-12-14 19:45:21 +01:00
Barend Gehrels
ff7cb5c21e Merge branch 'develop' into rescale_to_integer 2013-12-14 13:38:28 +01:00
Barend Gehrels
d988e1ac93 [geometry] Work in progress: rescaling to robust-type
A robust type is integer for float/double. The rescaled points will only
be used for side-information and equality and distance-comparisons, not
to calculate the intersection points themselves.
Currently the code is #ifdefed
2013-12-14 13:25:46 +01:00
Adam Wulkiewicz
a238da019b [geometry] added touches(Ls, Poly), added details for other combinations of linear-areal geometries 2013-12-14 04:01:32 +01:00
Adam Wulkiewicz
f78626b0f2 [geometry] added parameters reversal for touches() 2013-12-11 17:28:52 +01:00
Adam Wulkiewicz
ce263c3968 [geometry] added some tests for touches(Ls,Ls) 2013-12-11 12:07:27 +01:00
Adam Wulkiewicz
5b417cc66b [geometry] touches(Ls,Ls) algorithm modified 2013-12-11 11:47:16 +01:00
Adam Wulkiewicz
8d690ff164 [geometry] added touches(Ls, Ls) + tests 2013-12-11 02:08:54 +01:00
Adam Wulkiewicz
f95efb34ee [geometry] added tests for touches(Pt, MLs) and touches(Pt, MPoly), fixed error in point_in_geometry(Pt, MLs), fixed error in within(Pt, MLs) tests 2013-12-11 01:42:25 +01:00
Adam Wulkiewicz
437c94ad77 added touches(Point, Geometry) 2013-12-11 00:24:16 +01:00
Adam Wulkiewicz
ffa81b45e0 [geometry] added tests for intersects() 2013-12-08 14:42:17 +01:00
Adam Wulkiewicz
8ef20f9f88 added disjoint() for previously non-supported Geometries 2013-12-08 13:20:01 +01:00
Adam Wulkiewicz
5436fb2cfa added within() and covered_by() for Pt-Ls and Pt-MLs, fixed error in point_in_geometry for MLs 2013-12-08 12:36:31 +01:00
Barend Gehrels
1b3edc3e0d [geometry] unit-test, made par const and ignore it 2013-12-07 11:39:21 +01:00
Barend Gehrels
32eb7090d5 [geometry] Use rescale_policy in enrich_intersection_points and sectionalize
Also in get_turns forward them further up to point-comparison
2013-12-07 11:36:42 +01:00
Barend Gehrels
3e5333a8c4 [geometry] Remove all trailing spaces (tests) 2013-12-05 19:38:32 +01:00
Barend Gehrels
626ed1a0e7 [geometry] Remove trailing spaces.
For the rest this commit contains nothing.
2013-12-05 19:22:36 +01:00
Barend Gehrels
75d078aaed [geometry] added RescalePolicy template-parameter.
Where that was applied and possible, moved template-parameter to methods
instead of to classes.

This is a large commit, but contains no functional changes.
2013-12-05 19:20:54 +01:00
Barend Gehrels
a0d3f209d2 [geometry] Avoid generating any SVG, by default, in unit tests 2013-12-04 12:33:06 +01:00
Barend Gehrels
ab869aa7b8 [geometry] Comment failing test: centroid in release-mode 2013-12-04 12:28:07 +01:00
Barend Gehrels
e5340158ac [geometry] Moved template parameters in sectionalize, preparing for following changes 2013-12-04 12:27:22 +01:00
Barend Gehrels
7ec437a51b [geometry] Added testcase for mailed supposed error. Moved pie-test to header conform other testcases
[SVN r86769]
2013-11-19 21:12:50 +00:00
Bruno Lalande
fb3ec9de1f Made reverse algorithm variant-aware.
[SVN r86678]
2013-11-13 14:53:37 +00:00
Bruno Lalande
128ebab54c Made remove_spikes variant-aware.
[SVN r86634]
2013-11-12 07:52:06 +00:00
Barend Gehrels
4250868b59 [geometry] fixed self_intersection_points unit test for clang, added missing include
[SVN r86628]
2013-11-11 22:55:47 +00:00
Barend Gehrels
1088afb1be [geometry] Fixed self-turn points, neighboring function in get_turns did have the wrong meta-function. Also cleaned corresponding unit tests / added test cases for reported error (reported by Joan on mailing list)
[SVN r86627]
2013-11-11 22:36:57 +00:00
Bruno Lalande
d951f4ea72 Made perimeter algorithm variant-aware.
[SVN r86619]
2013-11-11 16:29:00 +00:00
Bruno Lalande
1799ee4777 Made within algorithm variant-aware.
[SVN r86606]
2013-11-10 23:07:59 +00:00
Barend Gehrels
52867f02ee [geometry] fixed WKT errors in convert-unit-tests. We now check extra on num_points
[SVN r86596]
2013-11-09 11:52:56 +00:00
Barend Gehrels
6d87fb3858 [geometry] fixed for_each which requires a closing point for its polygon (since WKT now always closes rings explicitly, few weeks ago)
[SVN r86593]
2013-11-09 11:27:55 +00:00
Barend Gehrels
ae4326c196 [geometry] fixed multi_simplify test which suffered from too many decimals in the test-output
[SVN r86591]
2013-11-09 11:18:34 +00:00
Barend Gehrels
ca7e072221 [geometry] added tests for point_on_surface for multipolygons
[SVN r86590]
2013-11-09 10:58:51 +00:00
Bruno Lalande
e3cfaf6470 Tests for variant aware envelope.
[SVN r86585]
2013-11-08 08:16:21 +00:00
Barend Gehrels
42c3e28ff7 [geometry] fixed ticket 8310, disjoint did give the wrong results. Fixed using point_on_surface. Added unit test. Also tests for overlay algorithms because they might suffer from the same problem
[SVN r86579]
2013-11-06 22:42:02 +00:00
Barend Gehrels
ee6140f274 [geometry] point_on_surface, update for linux/clang
[SVN r86555]
2013-11-03 21:11:54 +00:00
Barend Gehrels
cbafc2398a [geometry] added point_on_surface, developed last summer to SVN
[SVN r86554]
2013-11-03 21:00:34 +00:00
Barend Gehrels
28d1a9cf3a [geometry] Added real-life testcase for simplify
[SVN r86549]
2013-11-03 17:33:00 +00:00
Barend Gehrels
3b68b369dd [geometry] fixed strategy type, reported by Menelaos on the list
[SVN r86535]
2013-11-01 14:54:58 +00:00
Bruno Lalande
982c60d4f1 Made envelope variant-aware.
[SVN r86531]
2013-10-31 21:01:21 +00:00
Bruno Lalande
cfeaaf0cab Made disjoint variant-aware.
[SVN r86523]
2013-10-30 12:03:54 +00:00
Bruno Lalande
f8408c546f Made covered_by variant-aware.
[SVN r86461]
2013-10-26 21:37:49 +00:00
Barend Gehrels
ba2911a199 [geometry] removed unused variables in unit test
[SVN r86451]
2013-10-26 13:21:47 +00:00
Barend Gehrels
cee8a0506c [geometry] Added remove_spikes as an algorithm. The first version was already in extensions (for years), that is removed now. The new version works using the recent point_is_spike_or_equal
[SVN r86450]
2013-10-26 13:18:11 +00:00
Bruno Lalande
73e9c494b7 Made 'correct' variant-aware.
[SVN r86414]
2013-10-24 06:10:34 +00:00
Bruno Lalande
e2f11f015d Converted convex_hull to the multi-stage approach and made it variant-aware.
[SVN r86401]
2013-10-23 10:13:28 +00:00
Barend Gehrels
3a6ae0bacb [geometry] revised solution for robustness, we don't go to integer which was shortly done. This is partly a revert of r85867, where we scaled to integer. Now we make side information consistent by iteratively selecting a larger epsilon. This will be moved into a separate class. All tests pass now, also the complete ticket_9081 test which failed before
[SVN r86368]
2013-10-20 15:30:21 +00:00
Barend Gehrels
f85d454d9d [geometry] fixed tests for clang >= 3.2 w.r.t. std::abs and unsigned
[SVN r86358]
2013-10-18 20:48:31 +00:00
Bruno Lalande
80361cb770 Test for centroid's variant-awareness
[SVN r86337]
2013-10-17 06:17:50 +00:00
Bruno Lalande
e6f57e7523 Made the buffer algorithm variant aware.
[SVN r86240]
2013-10-11 21:47:28 +00:00
Barend Gehrels
21e712fe0d [geometry] changed overlay test w.r.t. pointcount, they might now deviate one or two
[SVN r86238]
2013-10-11 20:42:48 +00:00
Barend Gehrels
da927a0905 [geometry] added robustness test for ticket 9081
[SVN r86237]
2013-10-11 20:39:28 +00:00
Bruno Lalande
25206e4d5d Updated the assign unit tests to show it can handle variants (+ refactored a bit)
[SVN r86234]
2013-10-11 07:06:30 +00:00
Barend Gehrels
ac40228b07 [geometry] Major bugfix: intersection problem(s) caused by robustness, reported in ticket 9081. Causes were inconsistent side information by floating point precision. We now switch to integer for a specific region (6 points) to have the side information consistent. This removes many separate robustness checks previously done in cart_intersect, which is now more simple and ~200 lines shorter. And it removes also some robustness checks in get_turn_info (probably more were actually needed by old approach). It also uses this system in handle_tangencies and enrich_intersection_points.
It now also used the passed side information in direction.hpp, which saves calculations and is shorter.
In the end the performance is similar.
One (of many) situations in ticket 9081 is added in multi unit tests.


[SVN r85867]
2013-09-24 14:18:13 +00:00
Barend Gehrels
32aa8ebd08 [geometry] Unit tests, updated float-versions due to differences in spikes in recent commit (August). This is not tested by default..
[SVN r85775]
2013-09-18 12:20:12 +00:00
Barend Gehrels
7d329b3582 [geometry] added bigobj for the failing MSVC tests
[SVN r85562]
2013-09-04 11:17:34 +00:00
Adam Wulkiewicz
2c41475405 [geometry] tests added for segment/linestring-box intersects().
[SVN r85559]
2013-09-04 01:52:05 +00:00
Barend Gehrels
fb74bfbe26 [geometry] Fixed ticket 9047 (recursive inclusion) and unit test for ticket 8652
[SVN r85552]
2013-09-03 18:45:18 +00:00
Barend Gehrels
95cd9a2126 [geometry] added testcase for ticket 6958 which is also fixed by commit 85451 avoiding spikes
[SVN r85491]
2013-08-27 20:33:32 +00:00
Barend Gehrels
5df00d98c3 [geometry] cleanup test removing defines, moving testing-only-one-type to Jamfile
[SVN r85481]
2013-08-26 21:36:22 +00:00
Barend Gehrels
126511696c [geometry] fixes in unit-test, uncommented one testcase, enabled for 3 of 4 polygon types. Added convenience function to list type in case of errors
[SVN r85480]
2013-08-26 21:15:47 +00:00
Barend Gehrels
082c8e4d53 [geometry] fixed unit-test for intersections w.r.t. coordinates and last commit for spikes. One test is now commented because it returns different values in different situations
[SVN r85467]
2013-08-25 17:51:54 +00:00
Barend Gehrels
d1c4cb7b6d [geometry] avoid generation of spikes in overlays, this fixes ticket 8364 and 8365. Added unit tests for these tickets. These changes result in (at about 3 places) changes in the output-number-of-points, this is verified visually
[SVN r85451]
2013-08-24 22:53:43 +00:00
Barend Gehrels
fd95cc49a9 [geometry] added unit-test for tickets 8364 and 8365. They now fail but that will be fixed in next commit
[SVN r85450]
2013-08-24 21:10:12 +00:00
Barend Gehrels
81db2ee699 [geometry] robustness-tests added Jamfile and fixed gcc compilation errors
[SVN r85380]
2013-08-17 17:10:35 +00:00
Barend Gehrels
fdccdbff5e [geometry] cleanup, removing MSVC proj-files where were for version 2005
[SVN r85375]
2013-08-17 15:43:41 +00:00
Barend Gehrels
409be79e03 [geometry] added centroid calculation for segment type
[SVN r85346]
2013-08-14 15:31:46 +00:00
Bruno Lalande
4246ea4217 Distance strategies no longer need to be parameterized with the point type(s).
[SVN r85040]
2013-07-14 22:54:43 +00:00
Barend Gehrels
edca638dfc [geometry] Moved SVG from extensions to main tree, to release it
[SVN r84233]
2013-05-11 12:27:43 +00:00
Barend Gehrels
e975339eb5 [geometry] fix unit test error (expected value was wrong) and warnings for within test
[SVN r83745]
2013-04-03 15:49:55 +00:00
Barend Gehrels
d930a4944f [geometry] last added test in traverse did not enter the correct area, fixed
[SVN r83528]
2013-03-23 13:14:33 +00:00
Barend Gehrels
2ca66acb56 [geometry] pending commit, added check for within/disjoint, 3d boxes
[SVN r83527]
2013-03-23 13:03:57 +00:00
Barend Gehrels
2cdbd60372 [geometry] added condition for rt_i_rev test with float for non-Windows, because it currently fails
[SVN r83483]
2013-03-17 21:35:43 +00:00
Barend Gehrels
61844d7bf2 [geometry] Fix ticket 7462, (unit tests)
[SVN r83482]
2013-03-17 21:31:21 +00:00
Barend Gehrels
bc35eb29b6 [geometry] added case for ticket 8254, which had the same problem as buffer_mp1
[SVN r83478]
2013-03-17 17:20:47 +00:00
Barend Gehrels
0445cf26d7 [geometry] limited case #buffer_mp2 for traverse only for double, where the problem was
[SVN r83477]
2013-03-17 16:57:43 +00:00
Barend Gehrels
72f3b3f18e [geometry] test cases for #buffer_mp1 and #buffer_mp2, see previous two commits
[SVN r83476]
2013-03-17 16:34:55 +00:00
Bruno Lalande
6090b106af Made the length algorithm variant-aware.
[SVN r82484]
2013-01-13 23:09:27 +00:00
Bruno Lalande
dfb6a611db Made the convert algorithm variant-aware.
[SVN r82472]
2013-01-12 23:06:18 +00:00
Bruno Lalande
c3c0e57304 Made the equals algorithm variant-aware.
[SVN r82463]
2013-01-12 18:28:00 +00:00
Bruno Lalande
2cc83e50a1 Made the append algorithm variant-aware.
[SVN r82412]
2013-01-08 23:35:28 +00:00
Barend Gehrels
202f8db2b2 [geometry] updated traverse to avoid output of nearly empty rings, like in convert_rings. This also affects unit tests
[SVN r82020]
2012-12-16 13:26:21 +00:00
Barend Gehrels
129f6cf7dd [geometry] updated testsuite for difference, added test which checks convert_ring on inner-ring point-count
[SVN r82019]
2012-12-16 12:18:44 +00:00
Barend Gehrels
281bbfb52c [geometry] pending commit, unit test for problems with integer coordinates reported by Volker (again) at 2012/07/17 and fixed in r79505
[SVN r81967]
2012-12-15 12:31:06 +00:00
Barend Gehrels
86dd6e20e9 [geometry] added combinations point/ring, point/polygon, point/multi_polygon for disjoint and intersects (unit tests)
[SVN r81956]
2012-12-14 22:28:48 +00:00
Barend Gehrels
54a64a7e35 [geometry] fixed comparable_distance point-linestring (and -range, -polygon)
[SVN r81580]
2012-11-26 22:12:35 +00:00
Barend Gehrels
3ec9d48e43 [geometry] fixed for_each using C++11 lambda's, including adding unit test for them
[SVN r81418]
2012-11-18 19:51:00 +00:00
Bruno Lalande
b3dcf83fa3 Added support for variant geometries in area algorithms.
[SVN r80610]
2012-09-20 21:48:47 +00:00
Barend Gehrels
c719e7477e [geometry] Applied (slightly adapted) patch by Karsten Ahnert sent to me Jul 25, fixing disjoint for degenerate segments
[SVN r79757]
2012-07-26 16:16:43 +00:00
Barend Gehrels
117d6209dc [geometry] Unit test for formerly failing disjoint for polygon/box
[SVN r78796]
2012-06-01 21:46:03 +00:00
Barend Gehrels
a2636874eb [geometry] commented non running unit tests - their result (still) differs for float
[SVN r78722]
2012-05-28 16:22:16 +00:00
Barend Gehrels
dd5cb6fe6b [geometry] commit of robustness test for touches, and updated release note
[SVN r78700]
2012-05-27 21:44:47 +00:00
Barend Gehrels
4db3b6b782 [geometry] added touch - unit tests
[SVN r78691]
2012-05-27 17:47:28 +00:00
Barend Gehrels
23f456a758 [geometry] disabled recently uncomment test
[SVN r78660]
2012-05-26 21:19:35 +00:00
Barend Gehrels
fbb40a0793 [geometry] bugfix for union (unit test - pending commit - change done in april 2012)
[SVN r78654]
2012-05-26 20:48:00 +00:00
Barend Gehrels
4e1b8b3511 Update w.r.t. Boost.Range size now unsigned
[SVN r78615]
2012-05-25 14:27:29 +00:00
Barend Gehrels
0703f8e4f6 [geometry] fix in unit tests and avoid gcc warning
[SVN r77991]
2012-04-15 12:14:57 +00:00
Barend Gehrels
2373c321e5 [geometry] unit test update (especially in union) for fix of several robustness issues in cart_intersect and get_turn_info found by testing buffer algorithm
[SVN r77989]
2012-04-15 11:47:08 +00:00
Barend Gehrels
f139ba3a6c [geometry] unit tests for robustness fixes
[SVN r77352]
2012-03-16 17:00:57 +00:00
Barend Gehrels
a2e8386e90 [geometry] unit tests for robustness fixes
[SVN r77349]
2012-03-16 16:50:32 +00:00
Barend Gehrels
2449e6c4b6 [geometry] unit test to avoid future regressions in fix for robustness issue on touch with r > 1
[SVN r77338]
2012-03-14 18:59:19 +00:00
Barend Gehrels
b0d8b5c0a5 [geometry] added test called #ggl_list_20110820_christophe now also to union test to discover it earler, and uncommented test called #ggl_list_20110716_enrico
[SVN r77309]
2012-03-11 20:42:12 +00:00
Barend Gehrels
532007c6ab [geometry] updated test for robustness issue found
[SVN r77305]
2012-03-11 18:12:46 +00:00
Barend Gehrels
575098e9b6 [geometry] Fixed several robustness issues: non-valid polygons/rings are not added anymore;
collinear is now symmetric (it could happen that A was collinear w.r.t. B but not vice versa, that is now resolved);
  vertical/horizontal (nearly collinear) segments are now checked later (this and previous bug were found by buffer-high-volume tests).

Added testcases (buffer_rt_f did cause problems with previous implementation, fixed now). Updated testcases (some cases are quite sensitive to implementation while output is still valid)


[SVN r77296]
2012-03-10 19:11:17 +00:00
Barend Gehrels
349864cec9 Boost.Geometry bugfix for disjoint of opposite-equal or or opposite-collinear segments
plus prepares extra parameters for buffer

[SVN r77121]
2012-02-26 20:00:05 +00:00
Barend Gehrels
7372dfa3a4 Boost.Geometry applied patch from ticket https://svn.boost.org/trac/boost/ticket/6584 and fixed a related bug about the return type of strategies/projected_point which was integer for integer points (and should have been promoted to FP, fixed)
[SVN r77107]
2012-02-24 12:32:38 +00:00
Barend Gehrels
3cac6cdad6 Boost.Geometry unit-test update for last fix in line/poly overlay
[SVN r76976]
2012-02-11 14:26:19 +00:00
Barend Gehrels
7c57b7bae7 Boost.Geometry pending unit test change
[SVN r76965]
2012-02-10 20:46:08 +00:00
Barend Gehrels
604bb60f17 Boost.Geometry doc updates
[SVN r76963]
2012-02-10 19:52:53 +00:00
Barend Gehrels
56a8ecb01b Commented throw_on_empty_input for area, length, perimeter (but not for distance), see comments in throw_on_empty_input.hpp
[SVN r76916]
2012-02-06 20:50:12 +00:00
Barend Gehrels
0141f5dc1e Removed one non-relevant test for convex_hull
[SVN r76901]
2012-02-05 16:38:27 +00:00
Barend Gehrels
b924314228 Pending commits in unit tests
[SVN r76894]
2012-02-05 11:09:40 +00:00
Barend Gehrels
d75845b0db Adapted test Christoph to gcc which, for long double, also results in a polygon (pt 2 / msvc as well)
[SVN r76890]
2012-02-04 22:12:12 +00:00
Barend Gehrels
5ba364a6ac Adapted test Christoph to gcc which, for long double, also results in a polygon
[SVN r76889]
2012-02-04 21:50:01 +00:00
Barend Gehrels
22ba5b5dee Pending commit to add case of Christoph at 2011-08-19 and remove ticket_17 (which has self-intersections)
[SVN r76888]
2012-02-04 21:07:20 +00:00
Barend Gehrels
2c055da57d Added/updated unit test for distance fix, and new calculation_type meta function
[SVN r76882]
2012-02-04 15:18:06 +00:00
Barend Gehrels
237bd311d9 Fixed unit test for policy template parameter which has no default anymore
[SVN r76865]
2012-02-04 00:03:08 +00:00
Barend Gehrels
cbc6472435 Added testcase for last fix
[SVN r76864]
2012-02-03 23:42:07 +00:00
Barend Gehrels
be732f26d2 Added tests for disjoint (for fixes in previous commit)
[SVN r76860]
2012-02-03 21:18:17 +00:00
Barend Gehrels
02fa928c9c Reorganized robustness test include orders, which fixes compiler error (w.r.t. point_xy), and fixed empty_input_exceptions which could occur in some tests
[SVN r76858]
2012-02-03 21:02:52 +00:00
Barend Gehrels
4eae3b5b37 Updated tests to latest fixes, within/large integers, correct now with int, removed wkt/iomanip by default
[SVN r76857]
2012-02-03 19:15:02 +00:00
Barend Gehrels
f5c870f96a Had to move case 'hv4' to non-float because of error on linux/gcc
[SVN r76768]
2012-01-28 21:20:13 +00:00
Barend Gehrels
3b26c5f6c0 Added large-integer tests to area/centroid (tested as well for within,sectionalize,intersections,correct)
[SVN r76756]
2012-01-28 18:31:50 +00:00
Barend Gehrels
6db4d7db3d Fixes for clang in unit tests
[SVN r76520]
2012-01-15 15:41:29 +00:00
Barend Gehrels
40afe1bba5 Removed variables accepting return values to avoid warnings in gcc
[SVN r76515]
2012-01-15 13:30:56 +00:00
Barend Gehrels
05ab4d557a Added empty_input_exception and applied for distance, length, area, perimeter
Removed exception for convex_hull because that can be handled (for now) by leaving output empty. To be decided what is the definitive (additional, optional) behaviour.

[SVN r76514]
2012-01-15 13:23:08 +00:00
Barend Gehrels
1a250ac954 Added testcase from result (currently in extensions) buffer which was wrong first but fixed yesterday
[SVN r76494]
2012-01-14 17:33:19 +00:00
Barend Gehrels
72518c78f7 Fixed convex_hull for empty geometries by throwing exception
[SVN r76488]
2012-01-14 14:44:21 +00:00
Barend Gehrels
229222a373 Added/fixed unit test for centroid exceptions
[SVN r76487]
2012-01-14 14:19:35 +00:00
Barend Gehrels
61874e2c40 Updated copyrights 2010->2012
[SVN r76442]
2012-01-12 20:58:20 +00:00
Barend Gehrels
e6cdc34cc6 Added multi/.../wkt
[SVN r76440]
2012-01-12 20:42:30 +00:00
Barend Gehrels
5da8ef1a6d Added necessary boost/geometry/multi/io/wkt/wkt.hpp
[SVN r76438]
2012-01-12 20:02:17 +00:00
Barend Gehrels
4923c79319 Uncommented skipped tests which are running now correctly
[SVN r76437]
2012-01-12 19:09:44 +00:00
Barend Gehrels
aea119f33c Fixes w.r.t. self_intersection_points
[SVN r76436]
2012-01-12 18:59:08 +00:00
Barend Gehrels
7cb0ae96fd Boost.Geometry update copyright -> 2012
[SVN r76390]
2012-01-09 21:56:08 +00:00
Barend Gehrels
093427bd70 Fixed accidental commit of distance/assertion check
[SVN r76017]
2011-12-17 12:36:04 +00:00
Barend Gehrels
4be8f12c77 Fixed (mostly multi)tests for wkt update
[SVN r76016]
2011-12-17 12:34:39 +00:00
Barend Gehrels
c369fb6ade unsigned int to satisfy gcc
[SVN r76015]
2011-12-17 12:33:16 +00:00
Mateusz Loskot
8fbb9b3655 Boost.Geometry:
* Catch up with r75977 changes with new layout of IO formats in geometry/io/<FORMAT>/ 
* General maintenance in tests and examples.

[SVN r75979]
2011-12-16 01:45:22 +00:00
Barend Gehrels
f4b27c2b7d Updated unit tests for convert (3D segment -> linestring) and updated values for 3D to avoid index-confusion
[SVN r75784]
2011-12-03 10:35:02 +00:00
Barend Gehrels
7491095e99 Updated unit tests for convert (segment_to_segment, 3D cases)
[SVN r75783]
2011-12-03 10:27:26 +00:00
Barend Gehrels
679191f951 Linestring/polygon overlay, unit tests for phase 9
[SVN r75689]
2011-11-27 12:07:34 +00:00
Barend Gehrels
301c4c27a3 Added box-to-box conversion (unit test)
[SVN r75687]
2011-11-27 11:07:32 +00:00
Barend Gehrels
88123b8ec8 Linestring/polygon overlay, unit tests for phase 8
[SVN r75683]
2011-11-27 10:27:47 +00:00
Barend Gehrels
b6673058ad Linestring/polygon overlay, unit tests for phase 7
[SVN r75671]
2011-11-26 17:32:34 +00:00
Barend Gehrels
0e50b5fbb5 Linestring/polygon overlay, unit tests for phase 6
[SVN r75575]
2011-11-20 14:55:09 +00:00
Barend Gehrels
1a399451a2 Linestring/polygon overlay, unit tests for third phase
[SVN r75565]
2011-11-20 11:56:59 +00:00
Barend Gehrels
5c62dfcf06 Linestring/polygon overlay, unit tests for second phase
[SVN r75556]
2011-11-19 16:39:56 +00:00
Barend Gehrels
54cf5f9553 Linestring/polygon overlay, unit tests for first phase
[SVN r75553]
2011-11-19 13:45:44 +00:00
Barend Gehrels
3f93792938 Added SQL statement to check the two testcases which were partly wrongly defined earlier
[SVN r75117]
2011-10-25 19:41:19 +00:00
Barend Gehrels
4636a65643 Fixed order-problem by avoiding argument reversion. See correspondence on GGL mailing list 2011/10/25 --> fixed testcase
[SVN r75116]
2011-10-25 19:34:47 +00:00
Mateusz Loskot
b46bc26858 [geometry] Restructured WKT io files to follow structure of: geometry/domains/<DOMAIN>/io/<FORMAT>/<read|write>.hpp
[SVN r75076]
2011-10-20 23:20:05 +00:00
Mateusz Loskot
90ce0fa3d1 [geometry] Moved util/write_dsv.hpp to io/dsv/write.hpp. This introduces refinement of new io structure: geometry/io/<FORMAT>/<read|write>.hpp
[SVN r75073]
2011-10-20 21:12:52 +00:00
Barend Gehrels
25a26d48c1 Bugfix (robustness issue) based on ticket ggl-list by Christophe, dated Aug 20, 2011
Phase 1, it still has to be reworked

[SVN r74170]
2011-08-30 21:16:50 +00:00
Barend Gehrels
9dc22e4a06 Added support for point-output
[SVN r74163]
2011-08-30 15:56:05 +00:00
Barend Gehrels
3d35336318 Support for Boost.Rational in intersection test (part 2)
[SVN r74149]
2011-08-30 11:01:17 +00:00
Barend Gehrels
ee1277dfa5 Added (simplex) test for intersection using Boost.Rational and reapplied test_pointer
[SVN r74148]
2011-08-30 10:49:35 +00:00
Barend Gehrels
4d540b5a1d Added self intersections performance test
[SVN r73600]
2011-08-07 16:48:21 +00:00
Barend Gehrels
be677ef5d1 Fixed traversal tests from last update
[SVN r73547]
2011-08-05 13:50:44 +00:00
Barend Gehrels
1e5ea77fbc Fixed union unit test (by commenting new test) for gcc
[SVN r73416]
2011-07-28 21:35:29 +00:00
Barend Gehrels
25c1e0265a Typo in comment
[SVN r73415]
2011-07-28 20:58:53 +00:00
Barend Gehrels
38188d36b4 Fixed bug reported by Akira T on [Boost-users] at 27-7-2011 3:17
[SVN r73414]
2011-07-28 20:57:46 +00:00
Barend Gehrels
778c3b878e Fixed convert for two array-types (which cannot be copied in non-MSVC)
[SVN r73327]
2011-07-24 10:25:53 +00:00
Barend Gehrels
080f7e78cb Updated convert tests
[SVN r73322]
2011-07-24 09:42:05 +00:00
Barend Gehrels
af9ff27313 Omitted one test for gcc/linux
[SVN r73320]
2011-07-24 09:26:17 +00:00
Barend Gehrels
c94bba95fe Changes intersection tests because output is unique now.
[SVN r73319]
2011-07-24 09:08:26 +00:00
Barend Gehrels
87a5200272 Two small fixes in unit tests for gcc/linux
[SVN r73317]
2011-07-24 08:39:34 +00:00
Barend Gehrels
9fbb3b2f36 Fix in double coordinates in test
Use type_tt in union test, added test for recent ticket

[SVN r73315]
2011-07-24 08:12:10 +00:00
Barend Gehrels
4fb4ab26b1 Updated tests reflecting changes for within/covered_by
[SVN r73179]
2011-07-17 12:28:21 +00:00
Barend Gehrels
ed5bcfffb4 Added mixed-types test for within
[SVN r73063]
2011-07-13 19:09:11 +00:00
Barend Gehrels
3a9fcc6028 Added tests for within_code
[SVN r72875]
2011-07-03 14:21:52 +00:00
Barend Gehrels
527b3dcce3 Fixed two issues related to last commit
[SVN r72858]
2011-07-02 15:36:37 +00:00
Barend Gehrels
06e1044fb8 Included case sent to list on 2011-06-27 by Phillip in intersection/union/difference testcases.
Added if_typed and if_typed_tt helper functions

[SVN r72857]
2011-07-02 14:58:53 +00:00
Barend Gehrels
0c5d976ce5 Added spherical test for within
Updated spherical test for area
Fixed spherical side test

[SVN r72294]
2011-05-30 20:58:09 +00:00
Barend Gehrels
f9233f3c52 Extended spherical area test
[SVN r72288]
2011-05-30 15:10:15 +00:00
Barend Gehrels
e20206ab23 Made side strategy consistent with distance etc (with services::default_strategy)
Updated test spherical_side.cpp now testing ssf, cross_track, cartesian

[SVN r72269]
2011-05-29 20:46:22 +00:00
Barend Gehrels
9da5cc5e3c Fixed two tests w.r.t. spherical polar/equatorial
[SVN r72235]
2011-05-27 22:34:19 +00:00
Barend Gehrels
5eb0739f08 Spherical coordinate systems: splitted into "polar" and "equatorial" with opposite (co)latitude
[SVN r72233]
2011-05-27 22:01:05 +00:00
Barend Gehrels
88050db7ae Removed define TEST_WITH_SVG from project files (for release version)
and commented auto-index (also for release version)

[SVN r72076]
2011-05-22 14:52:10 +00:00
Barend Gehrels
f1032d4927 Two small fixes in (multi)equals tests
[SVN r72061]
2011-05-21 13:52:11 +00:00
Barend Gehrels
2034b3afb7 Fixed geometry::equals for high precision - testcase
(in this fix also the case that very first point is redundant is fixed)

[SVN r72030]
2011-05-18 18:09:20 +00:00
Barend Gehrels
1dc67c1bf5 Removed references to std_as_linestring/ring/multi_point and c_array* and boost_array* because there are now macros for that
[SVN r71824]
2011-05-08 15:52:29 +00:00
Barend Gehrels
dbd742cbff Mention all geometry headerfiles explicitly in examples (according to doc)
[SVN r71821]
2011-05-08 14:38:45 +00:00
Barend Gehrels
445c89adfe Reflects changes in moving range_type/as_range/circular_iterator
[SVN r71812]
2011-05-08 11:57:37 +00:00
Barend Gehrels
fb45f37eec Reflects changes in moving range_type/as_range/circular_iterator
[SVN r71808]
2011-05-08 11:01:13 +00:00
Barend Gehrels
0fe54a1a8d Added test for box-in-box
[SVN r71722]
2011-05-04 20:41:17 +00:00
Bruno Lalande
d92dbecb6a Aligned adapted C array and Boost Array to the recent changes.
[SVN r71575]
2011-04-28 21:26:54 +00:00
Bruno Lalande
9f301828e8 Added a test for 5D linestring centroid.
[SVN r71451]
2011-04-23 22:33:06 +00:00
Bruno Lalande
fc68031c90 Removed adapted/tuple_<cs>.hpp files and added a macro to use instead.
[SVN r71448]
2011-04-23 22:26:50 +00:00
Barend Gehrels
ab5f5590e8 Added test for exception on invalid input.
Bugfix in one of the tests (77) which was indeed invalid

[SVN r71358]
2011-04-17 20:57:18 +00:00
Barend Gehrels
1e70d25b60 Added/updated doc/examples for assign/convert/convex_hull
[SVN r71322]
2011-04-16 13:17:50 +00:00
Barend Gehrels
140e86d76d Fixed partition.cpp test for no-svg
[SVN r71314]
2011-04-16 12:09:34 +00:00
Barend Gehrels
ab1f3473bd Removed convert from jamfile
[SVN r71312]
2011-04-16 11:55:43 +00:00
Barend Gehrels
a3c4ae751a Updated jam
[SVN r71310]
2011-04-16 11:32:52 +00:00
Barend Gehrels
2f4136058b Added omitted _rev
[SVN r71308]
2011-04-16 11:29:26 +00:00
Barend Gehrels
964f231e9b Reverted (manually) the move of convert to detail. It will stay.
Reversed arguments of assign (phase 1, therefore temporarily called "assign_rev" to avoid left occurances)


[SVN r71307]
2011-04-16 11:27:59 +00:00
Barend Gehrels
7f1b59fa64 Small doc update/fix
[SVN r71299]
2011-04-15 20:57:08 +00:00
Barend Gehrels
91f240188c Updated tests (assign -> assign_values)
[SVN r71213]
2011-04-12 20:14:55 +00:00
Barend Gehrels
1af9fe70f4 Changes in test/doc to reflect changes in assign
[SVN r71209]
2011-04-12 18:29:39 +00:00
Barend Gehrels
030f9e1d2e Moved convert to detail::convert
[SVN r71118]
2011-04-08 14:55:06 +00:00
Bruno Lalande
9a615d79d3 Generalized linestring centroid to nD.
[SVN r71027]
2011-04-06 06:56:16 +00:00
Barend Gehrels
85810e3132 Changes required for run without extensions for release
[SVN r70917]
2011-04-02 23:17:11 +00:00
Barend Gehrels
a01c615089 Made copyright notices in libs/geometry consistent
[SVN r70876]
2011-04-02 20:33:14 +00:00
Barend Gehrels
2c0378bccb Reflects renaming things
[SVN r70854]
2011-04-02 13:31:05 +00:00
Barend Gehrels
86422d59b5 Reflect changes on make/inserter
[SVN r70825]
2011-04-01 16:54:09 +00:00
Barend Gehrels
6653116f9a Updated test select_rings to support pathscale 4.0.8 (seems not accepting tuple_list_of)
[SVN r70669]
2011-03-28 19:12:09 +00:00
Barend Gehrels
3d058b87d7 Marked some tests as not being for Intel (for 600 s limit)
Added (commited) select_rings
Removed dissolver from solution
Added optional offset for interior_triangles.cpp


[SVN r70582]
2011-03-26 18:48:23 +00:00
Barend Gehrels
01bf7a9be1 Refactored to not use overlay (for intel compilers / Boost.Trunk regression report)
[SVN r70581]
2011-03-26 18:39:02 +00:00
Barend Gehrels
5602737fc3 Big structural change in traverse w.r.t. Intel in Boost.Trunk summary status report
[SVN r70129]
2011-03-18 16:10:39 +00:00
Barend Gehrels
31d62e18ef Skip test/float for gcc systems, w.r.t. Boost.Trunk summary test report
[SVN r70127]
2011-03-18 15:32:37 +00:00
Barend Gehrels
9d68c93eaa Updates in test for partition addition
[SVN r69944]
2011-03-13 14:48:00 +00:00
Barend Gehrels
0aa0a8f9e4 Added unit-test for detail/partition
[SVN r69918]
2011-03-13 12:06:58 +00:00
Barend Gehrels
6590f01689 Renamed combine to expand, part 2: test, doc and examples
[SVN r69917]
2011-03-13 11:10:27 +00:00
Barend Gehrels
c1b1b4a6c7 Moved wkt (used in nearly all tests) from extension to domains tree for release
[SVN r69906]
2011-03-12 23:53:18 +00:00
Barend Gehrels
7595e454f0 Added old tests, now updated, to robustness suite to check if performance stays satisfactory
[SVN r69860]
2011-03-11 22:15:16 +00:00
Barend Gehrels
26b8777a67 Updated difference for float, now small zero-area triangle discarded
[SVN r69840]
2011-03-11 11:43:42 +00:00
Barend Gehrels
d662cda065 Added test for fix of robustness problem for case called "ggl_list_20110306_javier"
[SVN r69612]
2011-03-06 21:20:49 +00:00
Barend Gehrels
1f69fc31bf Refreshed intersection_stars.cpp as well now, with program_options and overlay_p_q
[SVN r69604]
2011-03-06 13:38:37 +00:00
Barend Gehrels
85993c5411 Added program_options to both intersection_pies.cpp and random_ellipses_stars.cpp now
Changed difference-test into a setting instead of a define


[SVN r69603]
2011-03-06 13:15:08 +00:00
Barend Gehrels
252b3dd94b Small addition/update in examples
Updated various intersection tests

[SVN r69585]
2011-03-05 22:28:20 +00:00
Barend Gehrels
ee47eed9c1 Relaxed tolerance of one test for boost trunk summary / different compilers
[SVN r69571]
2011-03-04 22:05:16 +00:00
Barend Gehrels
251642e5b3 Added tests for empty polygons in intersection,union,difference
Added testfiles for multi_difference.cpp, multi_transform.cpp
Added program options in robusness tests


[SVN r69570]
2011-03-04 21:43:58 +00:00
Barend Gehrels
aa9b9e4234 Added many tests for difference
Removed obsoleted copy.cpp

[SVN r69515]
2011-03-03 11:33:39 +00:00
Barend Gehrels
27a508db0f ifdefed ttmath in test_areal
[SVN r69339]
2011-02-27 17:29:22 +00:00
Barend Gehrels
b7be230f14 Added ttmath_big for:
append,assign,buffer,comparable_distance,convert,correct,disjoint,distance,envelope,for_each,make,reverse,simplify,transform,unique
  plus all vcproj files


[SVN r69336]
2011-02-27 16:27:57 +00:00
Barend Gehrels
dcadaa7bb7 Changed inclusion order for gcc
[SVN r69259]
2011-02-24 22:50:27 +00:00
Barend Gehrels
f3ee8984ef Testcases for difference, assign, append
[SVN r69254]
2011-02-24 22:32:00 +00:00
Barend Gehrels
4badcdc600 Moved dissolve to extension
Fixed extensions connect/offset tests for gcc 



[SVN r69086]
2011-02-20 18:18:10 +00:00
Barend Gehrels
034bc775df Renamed container_access to mutable_range
[SVN r69075]
2011-02-20 13:10:46 +00:00
Barend Gehrels
0966e4d870 Added tests for num_{points, geometries, interior_rings}
[SVN r68805]
2011-02-12 15:29:43 +00:00
Barend Gehrels
1f18baf96a Added test namespace
[SVN r68705]
2011-02-07 21:51:46 +00:00
Barend Gehrels
2c0540341a Changes related to mutable polygon concept
[SVN r68697]
2011-02-07 18:55:36 +00:00
Barend Gehrels
e0a240b770 Renamed linear_ring to ring (linear_ring is still available)
[SVN r68387]
2011-01-23 16:20:01 +00:00
Barend Gehrels
32d95d3d8e Doc update
Renamed area_by_triangles.hpp to area_surveyor.hpp because most files are named to their inventor or formula


[SVN r68370]
2011-01-22 18:51:45 +00:00
Steven Watanabe
d234480b24 Revert [67111] (addition of boost/detail/iomanip.hpp) and all the commits that depend on it. ([68137], [68140], [68141], [68154], and [68165]).
[SVN r68168]
2011-01-15 08:11:51 +00:00
Bryce Adelstein-Lelbach
dff17a97aa Replacing the use of <iomanip> with <boost/detail/iomanip.hpp> across Boost.
On Linux, GNU's libstdc++, which is the default stdlib for icc and clang,
cannot parse the <iomanip> header in version 4.5+ (which thankfully neither
compiler advises the use of yet), as it's original C++98-friendly
implementation has been replaced with a gnu++0x implementation.
<boost/detail/iomanip.hpp> is a portable implementation of <iomanip>, providing
boost::detail::setfill, boost::detail::setbase, boost::detail::setw,
boost::detail::setprecision, boost::detail::setiosflags and
boost::detail::resetiosflags. 



[SVN r68140]
2011-01-14 02:35:58 +00:00
Barend Gehrels
0c302b2037 Inspect tool report update (test/examples)
[SVN r67631]
2011-01-03 18:27:48 +00:00
Barend Gehrels
97f2e9a158 Update testcases for difference
Removed todo for dissolve, it is solved now


[SVN r67488]
2010-12-29 13:59:09 +00:00
Barend Gehrels
b4e047f371 Added test for box/box -> box intersection
[SVN r67474]
2010-12-28 16:40:15 +00:00
Barend Gehrels
e1a18db770 Small cleanup
[SVN r67417]
2010-12-22 22:00:10 +00:00
Barend Gehrels
e5946e5068 Updated more tests to "open-ness"
[SVN r67414]
2010-12-22 17:45:14 +00:00
Barend Gehrels
a1963d328a Added multi/closure.hpp
Added point_order/closure/difference to robustness tests (partly)

[SVN r67397]
2010-12-21 21:44:38 +00:00
Barend Gehrels
caa3a8f5d3 Renamed recursive_boxes.cpp to recursive_polygons.cpp because they are not (necessarily) boxes anymore
[SVN r67391]
2010-12-21 19:27:31 +00:00
Barend Gehrels
710d24b44d Update testcases to ccw
Added point_order to some multi-testcases, now explicitly necessary

[SVN r67375]
2010-12-20 21:33:48 +00:00
Barend Gehrels
43682f9029 Updates in test, cases for box/ccw are handled now
[SVN r67322]
2010-12-19 12:19:10 +00:00
Barend Gehrels
220db49460 Test: renamal get_full_section -> range_by_section
[SVN r67313]
2010-12-18 21:57:09 +00:00
Barend Gehrels
e672af1e8f Updated tests for new reverse behaviour
[SVN r67304]
2010-12-18 17:04:45 +00:00
Barend Gehrels
1f90af482d Updated polygon.hpp, ring_type is now reference because it returns a reference to its rings
Updated many test files to avoid point_2d
Updated boost.polygon adaption

[SVN r67178]
2010-12-11 15:51:38 +00:00
Barend Gehrels
1c8fce3059 model namespaces, moved point_xy to d2::point_xy, revised point_ll_deg to ll::point<degree>
[SVN r66975]
2010-12-02 16:10:47 +00:00
Barend Gehrels
e4f47a7a25 Major update:
Adaptions to test with respect to new namespace model
Removed GMP/CLN and, where it was present, replaced by TTMATH
Small fix in comparable_distance test
All testfiles use bg as alias now

[SVN r66811]
2010-11-28 13:28:09 +00:00
Barend Gehrels
0ee1d44707 Added multi-polygon self-tangent pie-test
Added test-cases for these

[SVN r66580]
2010-11-14 21:06:57 +00:00
Barend Gehrels
c95747492c Removed define TTMATH
[SVN r66565]
2010-11-14 08:15:04 +00:00
Barend Gehrels
e71fb07566 Assemble/traverse/enrich: complete update for handling self tangencies
-> added many testcases

Various updates in testcases for support of open polygons
recursive_boxes.cpp, added triangles as well (dropped corner)

[SVN r66450]
2010-11-08 10:32:23 +00:00
Barend Gehrels
770eeb35ec removed one test from dissolve not running on gcc
[SVN r65942]
2010-10-13 14:42:26 +00:00
Barend Gehrels
d262e99aea Fixed dissolve and added to jamfile
[SVN r65941]
2010-10-13 14:38:56 +00:00
Barend Gehrels
d36962b53d Refreshed get_turns: removed is_multi, moved pieces to implementation, shared things, implemented for multi
Made orientation for linear intersections flexible (because doesn't care)
There is now clipping (intersection box/geometry) for multi_polygon and multi_linestring


[SVN r65938]
2010-10-13 13:45:54 +00:00
Barend Gehrels
8fc78a88b4 Fixed traverse test
[SVN r65933]
2010-10-12 20:51:29 +00:00
Barend Gehrels
71d48da6e0 Implemented box with reverse polygon overlay
[SVN r65932]
2010-10-12 20:27:49 +00:00
Barend Gehrels
144e54d482 Silenced gcc warnings
[SVN r65924]
2010-10-12 13:17:09 +00:00
Barend Gehrels
8f86439655 Implemented ccw, plus check on areal feature, to union, conform intersection
Splitted assemble.hpp into get_ring.hpp, convert_ring.hpp, add_to_containment.hpp, overlay.hpp, assemble.hpp
Added some other mpl asserts



[SVN r65923]
2010-10-12 13:04:45 +00:00
Barend Gehrels
6564152e98 Finished ccw implementation of intersection
Added mpl assert for correct, if not implemented
Restructured intersection.cpp unit test to support cw


[SVN r65920]
2010-10-12 10:39:09 +00:00
Barend Gehrels
7a844d9dec Added algoritms/overlay/.Jamfile
[SVN r65914]
2010-10-11 16:32:26 +00:00
Barend Gehrels
51610518b1 Replaced ignore field by ignore method for swapping operations (for counter clockwise)
Added test/algorithms/overlay/ccw_traverse.cpp to test counterclockwise polygon overlays
Added test/algorithms/overlay to standards Jamfile.v2
Moved some testcases to overlay_cases.hpp
Some warning removals in test cases

[SVN r65913]
2010-10-11 16:18:51 +00:00
Barend Gehrels
d92605e4f0 Doc update
Renamed snippet to example
Added additional distinguishing qbk option
Some doc fixes

[SVN r65322]
2010-09-06 16:26:04 +00:00
Barend Gehrels
2d141c7857 Added testcases for intersections outputting points, disjoint segment/linestring, updated Doxygen file
[SVN r65256]
2010-09-04 15:28:27 +00:00
Barend Gehrels
9cd71226df clip_linestring: renamed linestring to range (for support segments)
added distance checks
added mpl assertions
added intersection segment/box
renamed "segment_iterator" to "segment_returning_iterator" to be able to reuse that name later on


[SVN r64505]
2010-07-31 18:41:31 +00:00
Barend Gehrels
80531061b6 Added support for distance point/open ring
[SVN r64416]
2010-07-28 20:29:19 +00:00
Barend Gehrels
718f431b2a Added point-ring distance plus testcase
[SVN r64414]
2010-07-28 18:07:06 +00:00
Barend Gehrels
b6444b5475 Fixed old issue that only geometry::segment could be used in distance
Splitted custom segment, moved to separate header

[SVN r64115]
2010-07-17 20:59:30 +00:00
Barend Gehrels
db53e722db Removed traits::append_point.
The library now used std::back_insert_iterator everywhere

[SVN r64113]
2010-07-17 20:26:29 +00:00
Barend Gehrels
33b785b225 Removed "use_std" for linestring / linear_ring because it is not necessary. Default now does "push_back", specialization possible
Plus necessary changes for this.
Also moved stuff from test distance to test_distance.hpp

[SVN r64095]
2010-07-17 14:02:12 +00:00
Barend Gehrels
8cf84e37b6 Added Point-Point strategy to default_strategy for Point-segment
Added some MPL assertions
Updated distance tests

[SVN r64087]
2010-07-17 10:46:25 +00:00
Barend Gehrels
bf45a7c988 strategy_distance is now better named to services::default_strategy (with version for point and segment)
strategy_tag is now services::tag everywhere


[SVN r63634]
2010-07-04 21:29:06 +00:00
Barend Gehrels
7bb11ad3f0 Added comparable_distance
Removed geometry::math::pi, now using boost::constants::pi
Solved abs/std::abs issues (2)


[SVN r63593]
2010-07-04 13:26:08 +00:00
Barend Gehrels
c125309514 Fix in new abs approach for transform (unit sphere forwards/backwards was not exactly 1.000 by rounding errors)
[SVN r63591]
2010-07-04 12:44:42 +00:00
Barend Gehrels
73a2d3d286 Fixed for gcc
[SVN r63584]
2010-07-04 10:29:08 +00:00
Barend Gehrels
9c23118c37 Added non-const version of get_section
Major changes in distance strategies
Changed double from simplify to template parameter
Added a promote_floating_point
Added a fp_coordinate_type
Added namespaced point in custom example
Added mpl assertion in overlaps (should be done in most algorithms by default)
Added high precision test for various distance algorithms

[SVN r63579]
2010-07-04 10:01:10 +00:00
Barend Gehrels
8e9dfdf3e6 Moved order/closure outside dispatches, not necessary there / more overhead
Implemented order/closure in within


[SVN r62175]
2010-05-24 17:03:41 +00:00
Barend Gehrels
5fb11344e4 Corrected closure for area
Added closure for centroid
Modified/fixed closing iterator (didn't compile for MSVC 2010)


[SVN r62172]
2010-05-24 13:54:32 +00:00
Barend Gehrels
068c2fa90a Added closed / closure
Updated jamfiles

[SVN r62170]
2010-05-24 09:07:05 +00:00
Barend Gehrels
da5e753d62 Updated paths
Added ccw test for area

[SVN r61707]
2010-04-30 14:58:07 +00:00
Barend Gehrels
1108f3cab3 Move overlay -> detail/overlay phase 2, moving files and adapting includes
[SVN r61544]
2010-04-24 16:57:53 +00:00
Barend Gehrels
a006f1026d Moved buffer to extensions (in test)
[SVN r61534]
2010-04-24 14:16:09 +00:00
Barend Gehrels
9b1c242187 vcproj fixes
extension fixes (in tests, in nsphere headers)



[SVN r61528]
2010-04-24 12:13:05 +00:00
Barend Gehrels
5ce9286957 vcorivcproj changes
bugfix in test/algorithms/overlay/robustness


[SVN r61513]
2010-04-23 21:15:08 +00:00
Barend Gehrels
6327031546 Last changes in buffer before moving it to extensions
Changes in dissolver/split rings

Added extensions/offset
Added const behaviour for for_each_coordinate

Aded reverse test for intersection

[SVN r61508]
2010-04-23 15:51:13 +00:00
Barend Gehrels
765060bf5a Fixed multi_dissolve using new dissolver
Dissolve now outputs, normally, to a vector of the original geometry, or, in case of a multi, to its single type. Like union and intersection
Implemented multi_dissolve for not-connected linestrings
Fixed some accidental tabs from testcases

[SVN r61036]
2010-04-04 11:10:26 +00:00
Barend Gehrels
158d3424c2 Added tests for buffer
Added test for remove_spikes
Small changes in tests for differences, sectionalize
Enhanced write_svg in the sense that .x()/.y() are removed, plus using max to avoid empty nonvisible boxes


[SVN r61020]
2010-04-03 13:39:20 +00:00
Barend Gehrels
6b0a209988 Moved sectionalize/get_section to detail/sections/
[SVN r60644]
2010-03-16 11:41:19 +00:00
Barend Gehrels
8b123014fa Added some tests on equality
[SVN r60593]
2010-03-14 22:23:28 +00:00
Barend Gehrels
04135a18c3 Added/updated tests for dissolve
[SVN r60579]
2010-03-14 14:31:21 +00:00
Barend Gehrels
9d6ce22c6d Added tests for reverse/unique
[SVN r60550]
2010-03-13 11:44:08 +00:00
Barend Gehrels
c74eb479c4 Added 05 overlay examples
Added difference tests
Updated some overlay tests

[SVN r60000]
2010-02-28 21:16:56 +00:00
Barend Gehrels
7a85b4c1f9 Moved rejected to the operation level, now state of visited
This solves cases 56/57. 55 still to be solved

[SVN r59806]
2010-02-21 12:38:45 +00:00
Barend Gehrels
c8a867d24e Removed warnings for gcc 4.2.4
[SVN r59803]
2010-02-21 09:22:13 +00:00
Barend Gehrels
51c55ffbf9 Added namespaces for svg_mapper in testfiles
[SVN r59802]
2010-02-21 09:12:09 +00:00
Mateusz Loskot
cb02a96518 Geometry: Updated union test case of Isovist with expected number of points for type 'd'. Corrected signed vs unsigned cast in comparison
[SVN r59791]
2010-02-20 20:30:11 +00:00
Barend Gehrels
eeef35e569 Renamed GGL/Geometry in some testfiles
[SVN r59786]
2010-02-20 16:58:38 +00:00
Barend Gehrels
5f6e73bc33 Silenced warnings
[SVN r59776]
2010-02-20 15:47:52 +00:00
Barend Gehrels
cead073c84 Added libs/geometry/test folder with many tests
[SVN r59773]
2010-02-20 15:03:37 +00:00