Commit Graph

2634 Commits

Author SHA1 Message Date
Adam Wulkiewicz
6abe245eb7 [get_turns] Fix invalid condition get_turn_info_la 2014-05-03 02:47:58 +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
93c5c4a329 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-05-01 12:38:07 +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
Barend Gehrels
9f1b9ff7ba [overlay] Calculate ratio for segment intersection where one segment is degenerate 2014-04-30 17:33:58 +02:00
Adam Wulkiewicz
566957de29 [test][get_turns] Add failing test cases for L/L 2014-04-30 12:57:39 +02:00
Adam Wulkiewicz
c88767bf2a Merge pull request #20 from sdebionne/develop
check_result_type is missing inline qualifier
2014-04-29 14:06:40 +02:00
Samuel Debione
118a750e9e check_result_type is missing inline qualifier
Function check_result_type is missing inline qualifier.
2014-04-29 13:47:09 +02: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
Adam Wulkiewicz
bf918c15d0 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-28 12:22:37 +02: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
Adam Wulkiewicz
3861b21682 Merge pull request #19 from mkaravel/develop
[policies][robustness] properly initialize m_approximation in default segment_ratio constructor
2014-04-28 11:27:40 +02:00
Menelaos Karavelas
65c57c4bfb [policies][robustness] properly initialize m_approximation in default segment_ratio constructor 2014-04-28 10:15:05 +03:00
Barend Gehrels
0311b165ab Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-27 20:54:46 +02:00
Barend Gehrels
ac913b5a67 Replaced #ifdef with extra parenthesis to solve macro/comma problems 2014-04-27 20:54:31 +02:00
Adam Wulkiewicz
294b888f76 [test][sectionalize] Fix GCC4.4 compilation error.
Explicitly use namespace geometry in sectionalize() overload used in the test.
2014-04-27 18:48:35 +02:00
Adam Wulkiewicz
d41be62461 [relate] refactor relate helpers.
Remove unused, commented-out code.
Improve the names.
2014-04-27 16:08:30 +02:00
Adam Wulkiewicz
6bbabf9867 [views][relate] Add detail::normalized_view<> and use it in relate_linear_areal.
It's a view connecting reversible_view and closeable_view, allowing to view a subrange of a Geometry as reversed and/or closed if necessary.
Polygons and similar Geometries are always CW, closed.
2014-04-27 04:11:22 +02:00
Adam Wulkiewicz
bcd64d3e40 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-26 15:28:33 +02: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
Barend Gehrels
7e775f8d35 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-26 14:49:51 +02:00
Barend Gehrels
c33abbd521 [rescale] avoid rescaling boxes (as long as box_tag derives from areal_tag) 2014-04-26 14:49:28 +02:00
Adam Wulkiewicz
b682b8996b [test] Add intersection test for 1-3d boxes 2014-04-26 14:23:35 +02:00
Adam Wulkiewicz
edfb2c29c0 [get_turns] Change parameters of intersection_info::is_spike_of_collinear() 2014-04-26 03:21:10 +02:00
Adam Wulkiewicz
f697aa85aa Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-04-26 03:04:40 +02:00
Adam Wulkiewicz
f671b5830f [get_turns] Refactor get_turns for L/L and L/A.
This change prevents duplication and decreases the number of parameters that must be passed to various functions and makes the code more readable.

Enclose parts of the code used in both implementations in one class - intersection_info. Move there IntersectionsResult, sides_calculator, spikes checks. Use this class in get_turn_info_linear_*. Provide convenient i_info() and d_info() to allow replacing result.template get<0>() and result.template get<1>() calls.
2014-04-26 03:03:58 +02:00
Barend Gehrels
b007b85c17 removed debug statement 2014-04-25 23:05:31 +02:00
Barend Gehrels
6a23b0ff80 [overlay] added metafunction rescale_overlay_policy_type to use rescaling
only for areal/areal
2014-04-25 22:57:55 +02:00
Adam Wulkiewicz
80654aea65 [get_turns] Refactor get_turn_info_for_endpoint::handle_segment(), remove unused variables.
The code was moved outside get_turn_info_for_endpoints, to linear_intersections.
The code in the caller is more clear and safer since all variables are initialized and stored in linear_intersections.
2014-04-25 19:34:11 +02:00
Adam Wulkiewicz
83f375fc96 [get_turns] Fix side_calculator Points order in get_turn_info_ll and get_turn_info_la 2014-04-25 12:44:59 +02:00
Adam Wulkiewicz
1bf5ef68a9 Merge pull request #18 from sdebionne/develop
[get_turns] Fix side_calculator Points order in get_turn_info
2014-04-25 12:42:22 +02:00
Samuel Debione
c0df65a209 Fix get_turn_info
Fix template parameter order in side_calculator call (would fail with
different point types).
2014-04-25 12:19:46 +02:00
Adam Wulkiewicz
17faeadaa6 [get_turns][relate] fix assert in get_turn_info, remove enriched_operation from relate/turns - additional distance is no longer needed 2014-04-25 01:01:00 +02:00
Adam Wulkiewicz
d59e66e6d2 Merge branch 'develop' into feature/relate 2014-04-25 00:31:42 +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
Barend Gehrels
30f4bd08b0 [overlay] removed unused distance_type 2014-04-24 22:35:34 +02:00
Barend Gehrels
2455677196 [intersect] Make calculations similar form, added const 2014-04-24 22:31:27 +02:00
Barend Gehrels
6bc9252c6a [intersect] Removed unused calculation 2014-04-24 22:30:45 +02:00
Barend Gehrels
d11d84c10d [intersect] Removed debug statements and adapted comments 2014-04-24 22:30:13 +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
5412c3bcf2 [strategies] remove register keyword 2014-04-24 11:41:07 +02:00
Adam Wulkiewicz
5d90c2449d Merge branch 'develop' into feature/relate 2014-04-24 02:00:22 +02:00
Adam Wulkiewicz
10ed56670d Merge pull request #17 from mkaravel/develop
[recalculate] add missing include for boost typeof
2014-04-24 01:59:50 +02:00
Adam Wulkiewicz
2ac24d446a Merge pull request #16 from mkaravel/feature/setops
Feature/setops: fixes/changes due to recent changes in develop branch
2014-04-24 01:59:30 +02:00
Adam Wulkiewicz
d74deb998d [relate] Partially fix Point-sized Linestrings support in relate(L/L).
The latest robustness upgrade introduced changes that broke the support:
1. degenerated turns are now method_none+c/c. This is fixed by this commit.
2. ratios aren't calculated for degenerated turns (proviously distances were calculated by AssignPolicy).
2014-04-24 01:55:21 +02:00
Menelaos Karavelas
3c910ee528 [recalculate] add missing include for boost typeof; needed because of BOOST_AUTO_TPL; 2014-04-24 02:20:23 +03:00
Menelaos Karavelas
9d293c8c03 [set ops] degenerate turns have now method_none; update test for isolating points to check for this method 2014-04-24 02:01:39 +03:00
Menelaos Karavelas
680c826f58 [turns][debug] output the fraction value as part of the debug output 2014-04-24 02:00:34 +03:00
Menelaos Karavelas
31fd0797cc [set ops][turns] compare turns using the fraction instead of the distance 2014-04-24 01:59:42 +03:00