|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r78852 - in branches/release: boost/geometry boost/geometry/algorithms boost/geometry/algorithms/detail boost/geometry/algorithms/detail/overlay boost/geometry/arithmetic boost/geometry/core boost/geometry/geometries boost/geometry/io boost/geometry/io/dsv boost/geometry/iterators boost/geometry/multi boost/geometry/policies boost/geometry/strategies boost/geometry/util boost/geometry/views libs/geometry/doc libs/geometry/doc/concept libs/geometry/doc/doxy libs/geometry/doc/generated libs/geometry/doc/html libs/geometry/doc/reference libs/geometry/doc/src libs/geometry/example libs/geometry/test libs/geometry/test/algorithms
From: barend.gehrels_at_[hidden]
Date: 2012-06-07 14:43:45
Author: barendgehrels
Date: 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
New Revision: 78852
URL: http://svn.boost.org/trac/boost/changeset/78852
Log:
[geometry] merged revision 78724 thru 7880 w.r.t. bugfixes
Properties modified:
branches/release/boost/geometry/algorithms/ (props changed)
branches/release/boost/geometry/arithmetic/ (props changed)
branches/release/boost/geometry/core/ (props changed)
branches/release/boost/geometry/geometries/ (props changed)
branches/release/boost/geometry/geometry.hpp (props changed)
branches/release/boost/geometry/io/ (props changed)
branches/release/boost/geometry/io/dsv/ (props changed)
branches/release/boost/geometry/iterators/ (props changed)
branches/release/boost/geometry/multi/ (props changed)
branches/release/boost/geometry/policies/ (props changed)
branches/release/boost/geometry/strategies/ (props changed)
branches/release/boost/geometry/util/ (props changed)
branches/release/boost/geometry/views/ (props changed)
branches/release/libs/geometry/doc/ (props changed)
branches/release/libs/geometry/doc/Jamfile.v2 (props changed)
branches/release/libs/geometry/doc/about_documentation.qbk (props changed)
branches/release/libs/geometry/doc/acknowledgments.qbk (props changed)
branches/release/libs/geometry/doc/concept/ (props changed)
branches/release/libs/geometry/doc/copyright_note_policy.txt (props changed)
branches/release/libs/geometry/doc/design_rationale.qbk (props changed)
branches/release/libs/geometry/doc/doxy/ (props changed)
branches/release/libs/geometry/doc/generated/ (props changed)
branches/release/libs/geometry/doc/geometry.qbk (props changed)
branches/release/libs/geometry/doc/html/ (props changed)
branches/release/libs/geometry/doc/imports.qbk (props changed)
branches/release/libs/geometry/doc/introduction.qbk (props changed)
branches/release/libs/geometry/doc/make_qbk.py (props changed)
branches/release/libs/geometry/doc/matrix.qbk (props changed)
branches/release/libs/geometry/doc/quickref.xml (props changed)
branches/release/libs/geometry/doc/quickstart.qbk (props changed)
branches/release/libs/geometry/doc/readme.txt (props changed)
branches/release/libs/geometry/doc/reference/ (props changed)
branches/release/libs/geometry/doc/reference.qbk (props changed)
branches/release/libs/geometry/doc/release_notes.qbk (props changed)
branches/release/libs/geometry/doc/src/ (props changed)
branches/release/libs/geometry/example/ (props changed)
branches/release/libs/geometry/test/ (props changed)
Text files modified:
branches/release/boost/geometry/algorithms/detail/overlay/get_turns.hpp | 13 ++++++++++---
branches/release/boost/geometry/algorithms/detail/overlay/overlay.hpp | 2 +-
branches/release/boost/geometry/algorithms/detail/point_on_border.hpp | 9 ++++++---
branches/release/libs/geometry/doc/html/index.html | 12 ++++++------
branches/release/libs/geometry/test/algorithms/disjoint.cpp | 9 +++++++++
5 files changed, 32 insertions(+), 13 deletions(-)
Modified: branches/release/boost/geometry/algorithms/detail/overlay/get_turns.hpp
==============================================================================
--- branches/release/boost/geometry/algorithms/detail/overlay/get_turns.hpp (original)
+++ branches/release/boost/geometry/algorithms/detail/overlay/get_turns.hpp 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
@@ -495,7 +495,7 @@
int source_id1, Range const& range,
int source_id2, Box const& box,
Turns& turns,
- InterruptPolicy& ,
+ InterruptPolicy& interrupt_policy,
int multi_index = -1, int ring_index = -1)
{
if (boost::size(range) <= 1)
@@ -557,7 +557,7 @@
get_turns_with_box(seg_id, source_id2,
*prev, *it, *next,
bp[0], bp[1], bp[2], bp[3],
- turns);
+ turns, interrupt_policy);
// Future performance enhancement:
// return if told by the interrupt policy
}
@@ -596,7 +596,8 @@
box_point_type const& bp2,
box_point_type const& bp3,
// Output
- Turns& turns)
+ Turns& turns,
+ InterruptPolicy& interrupt_policy)
{
// Depending on code some relations can be left out
@@ -622,6 +623,12 @@
ti.operations[1].seg_id = segment_identifier(source_id2, -1, -1, 3);
TurnPolicy::apply(rp0, rp1, rp2, bp3, bp0, bp1,
ti, std::back_inserter(turns));
+
+ if (InterruptPolicy::enabled)
+ {
+ interrupt_policy.apply(turns);
+ }
+
}
};
Modified: branches/release/boost/geometry/algorithms/detail/overlay/overlay.hpp
==============================================================================
--- branches/release/boost/geometry/algorithms/detail/overlay/overlay.hpp (original)
+++ branches/release/boost/geometry/algorithms/detail/overlay/overlay.hpp 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
@@ -233,7 +233,7 @@
std::cout << "map_turns: " << timer.elapsed() << std::endl;
#endif
- typedef ring_properties<typename geometry::point_type<Geometry1>::type> properties;
+ typedef ring_properties<typename geometry::point_type<GeometryOut>::type> properties;
std::map<ring_identifier, properties> selected;
select_rings<Direction>(geometry1, geometry2, map, selected, ! turn_points.empty());
Modified: branches/release/boost/geometry/algorithms/detail/point_on_border.hpp
==============================================================================
--- branches/release/boost/geometry/algorithms/detail/point_on_border.hpp (original)
+++ branches/release/boost/geometry/algorithms/detail/point_on_border.hpp 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
@@ -25,6 +25,7 @@
#include <boost/geometry/geometries/concepts/check.hpp>
#include <boost/geometry/algorithms/assign.hpp>
+#include <boost/geometry/algorithms/detail/convert_point_to_point.hpp>
#include <boost/geometry/algorithms/detail/disjoint.hpp>
@@ -50,7 +51,8 @@
template<typename Point, std::size_t Dimension, std::size_t DimensionCount>
struct midpoint_helper
{
- static inline bool apply(Point& p, Point const& p1, Point const& p2)
+ template <typename InputPoint>
+ static inline bool apply(Point& p, InputPoint const& p1, InputPoint const& p2)
{
typename coordinate_type<Point>::type const two = 2;
set<Dimension>(p,
@@ -63,7 +65,8 @@
template <typename Point, std::size_t DimensionCount>
struct midpoint_helper<Point, DimensionCount, DimensionCount>
{
- static inline bool apply(Point& , Point const& , Point const& )
+ template <typename InputPoint>
+ static inline bool apply(Point& , InputPoint const& , InputPoint const& )
{
return true;
}
@@ -102,7 +105,7 @@
if (n > 0)
{
- point = *boost::begin(range);
+ geometry::detail::conversion::convert_point_to_point(*boost::begin(range), point);
return true;
}
return false;
Modified: branches/release/libs/geometry/doc/html/index.html
==============================================================================
--- branches/release/libs/geometry/doc/html/index.html (original)
+++ branches/release/libs/geometry/doc/html/index.html 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
@@ -34,7 +34,7 @@
<div><p class="copyright">Copyright © 2009-2012 Barend
Gehrels, Bruno Lalande, Mateusz Loskot</p></div>
<div><div class="legalnotice">
-<a name="id792816"></a><p>
+<a name="id534051"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
</p>
@@ -89,24 +89,24 @@
Alfredo Correa (adaption of Boost.Array)
</li>
<li class="listitem">
- Adam Wulkiewicz (spatial indexes) <sup>[<a name="id823824" href="#ftn.id823824" class="footnote">1</a>]</sup>
+ Adam Wulkiewicz (spatial indexes) <sup>[<a name="id565059" href="#ftn.id565059" class="footnote">1</a>]</sup>
</li>
<li class="listitem">
- Federico Fernández (spatial indexes) <sup>[<a name="id823837" href="#ftn.id823837" class="footnote">2</a>]</sup>
+ Federico Fernández (spatial indexes) <sup>[<a name="id565072" href="#ftn.id565072" class="footnote">2</a>]</sup>
</li>
</ul></div>
<div class="footnotes">
<br><hr width="100" align="left">
-<div class="footnote"><p><sup>[<a name="ftn.id823824" href="#id823824" class="para">1</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id565059" href="#id565059" class="para">1</a>] </sup>
Currently an extension
</p></div>
-<div class="footnote"><p><sup>[<a name="ftn.id823837" href="#id823837" class="para">2</a>] </sup>
+<div class="footnote"><p><sup>[<a name="ftn.id565072" href="#id565072" class="para">2</a>] </sup>
Currently an extension
</p></div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: February 12, 2012 at 17:59:04 GMT</small></p></td>
+<td align="left"><p><small>Last revised: May 28, 2012 at 16:44:23 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>
Modified: branches/release/libs/geometry/test/algorithms/disjoint.cpp
==============================================================================
--- branches/release/libs/geometry/test/algorithms/disjoint.cpp (original)
+++ branches/release/libs/geometry/test/algorithms/disjoint.cpp 2012-06-07 14:43:44 EDT (Thu, 07 Jun 2012)
@@ -119,6 +119,15 @@
test_disjoint<ls, ls>("ls/ls co-e", "linestring(0 0,1 1)", "linestring(1 1,0 0)", false);
+ // Problem described by Volker/Albert 2012-06-01
+ test_disjoint<polygon, box>("volker_albert_1",
+ "POLYGON((1992 3240,1992 1440,3792 1800,3792 3240,1992 3240))",
+ "BOX(1941 2066, 2055 2166)", false);
+
+ test_disjoint<polygon, box>("volker_albert_2",
+ "POLYGON((1941 2066,2055 2066,2055 2166,1941 2166))",
+ "BOX(1941 2066, 2055 2166)", false);
+
// Degenerate linestrings
{
// Submitted by Zachary on the Boost.Geometry Mailing List, on 2012-01-29
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk