Commit Graph

3350 Commits

Author SHA1 Message Date
Menelaos Karavelas
baf0be47da [strategies][comparable distance] re-implement default_comparable_distance_result
using comparable_distance_result
2014-07-02 23:29:04 +03:00
Menelaos Karavelas
8e22379623 [strategies][distance] re-implement default_distance_result using
distance_result
2014-07-02 23:28:34 +03:00
Menelaos Karavelas
f7cfb6a259 [strategies][comparable distance] implement the class
comparable_distance_result
2014-07-02 23:28:03 +03:00
Menelaos Karavelas
86c96deaaf [strategies][distance] implement the class distance_result 2014-07-02 23:26:56 +03:00
Adam Wulkiewicz
6e673af06f Merge pull request #81 from mkaravel/feature/is_simple
Feature/is simple
2014-07-02 11:50:58 +02:00
Adam Wulkiewicz
0081d080f5 Merge pull request #82 from mkaravel/feature/distance
[doc][algorithms] add documentation for the comparable_distance free function that takes a strategy
2014-07-02 11:48:26 +02:00
Menelaos Karavelas
a87c68b62f [algorithms][is_valid] remove obsolete comment 2014-07-02 11:53:49 +03:00
Menelaos Karavelas
a1710c2bd3 [doc][algorithms] add documentation for the comparable_distance free
function that takes a strategy
2014-07-02 11:50:04 +03:00
Menelaos Karavelas
5373c32fc9 [doc][images] add PNG images for is_valid and is_simple documentation 2014-07-02 11:32:17 +03:00
Menelaos Karavelas
cc90fde7df [doc][examples][is_valid] add image; slightly modify the example geometry
(one of the interior rings was having CW orientation instead of CCW)
2014-07-02 11:30:55 +03:00
Menelaos Karavelas
1357c9cc35 [doc][examples][is_simple] add image 2014-07-02 11:30:35 +03:00
Menelaos Karavelas
46da1da916 [doc][examples] change the color used for drawing the geometry 2014-07-02 11:29:43 +03:00
Menelaos Karavelas
f2c8ccefca [test][is_valid] add as test case the polygon used in the documentation
example for is_valid
2014-07-02 11:28:40 +03:00
Adam Wulkiewicz
512b07e85d Merge pull request #80 from mkaravel/feature/is_simple
Feature/is simple
2014-07-02 01:41:14 +02:00
Menelaos Karavelas
bda78a8153 [algorithms][is_valid] fix bug in initialization of DFS data for
detecting cycles
2014-07-02 02:30:24 +03:00
Menelaos Karavelas
6490d2db4a [test][is_valid] add one more test case: add a polygon with many holes
(important note here: many means more than the number of turns)
2014-07-02 02:29:06 +03:00
Adam Wulkiewicz
e9178b6a80 Merge pull request #75 from mkaravel/feature/is_simple
Feature/is simple
2014-07-01 17:27:01 +02:00
Menelaos Karavelas
fc14209d5f [algorithms][is_valid] replace TurnPoint const& by TurnPoint const*
in complement graph vertex
2014-07-01 17:50:25 +03:00
Menelaos Karavelas
104aafd05d [algorithms][is_valid] make the complement graph vertex id an unsigned
integer (to avoid conversion warnings)
2014-07-01 09:57:55 +03:00
Menelaos Karavelas
df3da8aa66 [algorithms][is_valid] re-design the complement graph: store neighbors
in the graph instead of at each vertex; store DFS data for detecting
cycles outside the vertices;
2014-07-01 00:05:02 +03:00
Barend Gehrels
9fc3b36d25 Merge pull request #77 from mkaravel/feature/doc-strategies
Feature/doc strategies
2014-06-30 21:04:44 +02:00
Barend Gehrels
a1bde8e927 Merge pull request #72 from mkaravel/fix/graham_andrew
[strategies][agnostic] fix bug in Graham-Andrew strategy:
2014-06-30 20:51:11 +02:00
Adam Wulkiewicz
9c974a11f1 Merge pull request #79 from mkaravel/feature/remove_points_front_back
Feature/remove points front back
2014-06-30 14:20:59 +02:00
Menelaos Karavelas
fcc5d26877 [test][iterators] remove tests for points_front and points_back 2014-06-30 12:18:45 +03:00
Menelaos Karavelas
5e94f07ec0 [iterators][point_iterator] remove free functions points_front and points_back 2014-06-30 12:18:03 +03:00
Barend Gehrels
b637012bf3 [test] add bigobj flag for union/buffer 2014-06-28 13:22:32 +02:00
Menelaos Karavelas
31361135dc [algorithms][is_valid] re-structure and polish code a bit;
check relative containment of rings only for rings that are not
associated with turns
2014-06-27 13:36:48 +03:00
Menelaos Karavelas
a156ba17dc [test][is_valid] add test cases for polygons and multi-polygons inspired by email
exchanges with Barend Gehrels
2014-06-27 13:02:39 +03:00
Menelaos Karavelas
1465ada4ba [doc][stratiegies][distance] add pythagoras point-box and box-box strategies 2014-06-27 03:37:00 +03:00
Menelaos Karavelas
9930615207 [strategies][distance] update doxygen documentation for pythagoras
point-box and box-box strategies
2014-06-27 03:35:31 +03:00
Menelaos Karavelas
57a97b19cb [doc][algorithms][examples] update copyright header 2014-06-27 02:42:13 +03:00
Menelaos Karavelas
ac17fdcbdc [algorithms][is_simple,is_valid] add doxygen documentation for is_simple and is_valid 2014-06-27 02:38:21 +03:00
Menelaos Karavelas
ff8d26e3e9 [doc][is_simple, is_valid] add doxygen and qbk support for documentation
of is_simple and is_valid; add qbk doc for is_simple and is_valid;
add example for is_simple and is_valid;
2014-06-27 02:35:33 +03:00
Menelaos Karavelas
7ec752d5ea [geometry] add is_simple and is_valid algorithms in geometry.hpp 2014-06-27 02:28:17 +03:00
Menelaos Karavelas
274c64c5d8 [algorithms][is_simple] add missing include 2014-06-27 02:27:28 +03:00
Menelaos Karavelas
dcb5420935 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-27 01:23:18 +03:00
Adam Wulkiewicz
471c267652 Merge pull request #76 from mkaravel/feature/doc
Fix documentation issues
2014-06-26 23:45:49 +02:00
Menelaos Karavelas
4ddbe46ec4 Merge branch 'feature/doc' into feature/is_simple 2014-06-26 23:05:27 +03:00
Menelaos Karavelas
6ad8760295 [doc] add documentation support for is_valid and is_simple 2014-06-26 22:56:29 +03:00
Menelaos Karavelas
f0f037df2b Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-26 22:52:43 +03:00
Menelaos Karavelas
f9f1387efa [doc] add algorithms/detail/comparable_distance to the doxygen input
path
2014-06-26 22:40:21 +03:00
Menelaos Karavelas
fcebb52f0a [doc][index] doxygen 1.8.4 complains that SYMBOL_CACHE_SIZE is obsolete
and suggests to remove the entry
2014-06-26 22:38:44 +03:00
Barend Gehrels
7baf1a29e5 [buffer] We have to simplify the ring before to avoid very small-scaled
features in the original (convex/concave/convex) being enlarged
in a very large scale and causing issues (IP's within pieces).
This might be reconsidered later. Simplifying with a very small
distance will never be visible in the result,
if it is using round joins. For miter joins they are even more
sensitive to small scale input features, however the result will
look better.

A distance strategy can change behaviour (make larger - set simplify
distance to 0.0 to avoid simplification)

This fixes the parcel issue(s)
2014-06-25 13:32:42 +02:00
Menelaos Karavelas
15773cbf93 [algorithms][is_valid] fix some wrong usages of std::size_t (should
have been int)
2014-06-25 09:34:53 +03:00
Menelaos Karavelas
bcaf4a374a Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-25 01:54:15 +03:00
Barend Gehrels
7f3b509fb5 [buffer] use endcap strategy for spikes. Check jointype also (again)
for line-line intersection because it is based on buffered segments.
2014-06-24 22:48:04 +02:00
Menelaos Karavelas
9059f73d54 [algorithms][is_valid] remove USE_INTERRUPT_POLICY macro 2014-06-24 19:43:32 +03:00
Menelaos Karavelas
a9526bbbc5 [test][is_valid] add multi-polygon test cases where one polygon is inside
a hole of another
2014-06-24 14:47:53 +03:00
Menelaos Karavelas
ec2417f701 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-24 14:08:06 +03:00
Menelaos Karavelas
346784d5e5 [test][is_valid] move validity check functions/classes and related
code to file test_is_valid.hpp; make testing more elaborate: for rings,
convert them to polygons and multi-polygons and test them as such;
for polygons, convert them to multi-polygons and test them as such;
2014-06-24 13:43:52 +03:00