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
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
c27671336c
Merge pull request #4 from mkaravel/feature/point_iterator
...
Merge feature/point_iterator into develop
2014-04-01 00:07:20 +02:00
Adam Wulkiewicz
b0221bcda1
[get_turns] fix invalid equal<> use (convert() for uninitialized Point) in get_turn_info_for_endpoints and get_turn_info_linear_areal
2014-03-29 14:08:11 +01:00
Menelaos Karavelas
e1f39cd065
[point_iterator] minor and stylistic changes; in concatenate_iterator use enable_if_c instead of enable_if (shorter code);
2014-03-28 00:30:50 +02:00
Menelaos Karavelas
5e96c27c84
[point_iterator] make private the constructor of point_iterator that takes the base class as argument;
2014-03-28 00:11:16 +02:00
Menelaos Karavelas
c127c56871
[point_iterator] changes due to new location of files and namespaces used;
2014-03-27 23:32:05 +02:00
Menelaos Karavelas
25e746cd2a
[point_iterator] move code to new namespace; remove comments; points_begin/point_end now return point_iterator<Geometry> class (suggested by Adam);
2014-03-27 23:29:37 +02:00
Menelaos Karavelas
88264401a1
[point_iterator] change namespace from core_dispatch to dispatch; fix macros of files due to new location;
2014-03-27 23:28:07 +02:00
Menelaos Karavelas
5d27f4f301
[point_iterator][flatten_iterator] polish code a bit; fix problems with copy constructor;
2014-03-27 23:27:23 +02:00
Menelaos Karavelas
f5d48b3798
[point_iterator][concatenate_iterator] fix issues in copy constructor;
2014-03-27 23:26:25 +02:00
Menelaos Karavelas
8a8132e6c0
[point_iterator] moved files to proper directories
2014-03-27 23:23:51 +02:00
Menelaos Karavelas
64c11353be
[point_iterator] move flatten and concatenate iterator implementation in iterators/ directory;
2014-03-27 02:25:38 +02:00
Menelaos Karavelas
555947d8e2
[point_iterator] define points_{begin,end} as inline free functions;
2014-03-27 02:11:02 +02:00
Menelaos Karavelas
7abe47876b
[feature/point iterator] implementation of point iterator for most geometries (not yet for point, segment & box);
2014-03-26 10:22:31 +02:00
Adam Wulkiewicz
830a073c0d
Merge branch 'feature/relate' into develop
2014-03-25 15:10:48 +01:00
Adam Wulkiewicz
3a29d3a90c
[relate] fix MinGW compilation error - add includes missing in relate/result.hpp
2014-03-25 03:16:40 +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
3b91c7ed34
[relate] fix compile errors (use of old names)
2014-03-23 17:54:52 +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
bddaadd8bc
[geometry] round() moved to util/math, added doxygen info to round() and range utils
2014-03-23 16:34:06 +01:00
Adam Wulkiewicz
e99574f1ed
[relate][get_turns] add missing brackets
2014-03-23 15:21:36 +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
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
Adam Wulkiewicz
b79b857d1e
[relate][get_turns] fixed (GCC) compilation errors (missing include, typename keyword, shadowing of template parameters)
2014-03-20 01:59:33 +01:00
Adam Wulkiewicz
9d49d802e9
[relate] group_dim util moved to separate file
2014-03-20 01:45:27 +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
Adam Wulkiewicz
3e926cb818
[relate] implement the check for boundaries of Areal equal to Linear geometries in L/A
2014-03-19 19:50:54 +01: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
8cf2cfacc3
[get_turns] fix is_collinear calculation for methods t and m for L/L and L/A
2014-03-18 12:33:25 +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
Adam Wulkiewicz
b4417c40ad
[relate] add basic get_turns interrupt policy for L/L
2014-03-17 14:16:25 +01:00
Menelaos Karavelas
79bbb5a408
[geometry][append] updated copyright headers
2014-03-17 09:51:37 +02:00
Menelaos Karavelas
971247df04
updated the documentation wrt multi-linestrings and multi-polygons
2014-03-17 09:42:14 +02:00
Adam Wulkiewicz
ac8d628b8e
[relate] fix error in static handler set dispatch, require const boundary checkers in algorithms
2014-03-17 00:52:37 +01: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
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