$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r77122 - trunk/boost/geometry/algorithms/detail/overlay
From: barend.gehrels_at_[hidden]
Date: 2012-02-26 16:26:07
Author: barendgehrels
Date: 2012-02-26 16:26:06 EST (Sun, 26 Feb 2012)
New Revision: 77122
URL: http://svn.boost.org/trac/boost/changeset/77122
Log:
Boost.Geometry update in last fix (removes double assignment, handles follow-for warning gcc, comment-typos)
Text files modified: 
   trunk/boost/geometry/algorithms/detail/overlay/follow.hpp        |     2 +-                                      
   trunk/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp |    21 +++------------------                   
   2 files changed, 4 insertions(+), 19 deletions(-)
Modified: trunk/boost/geometry/algorithms/detail/overlay/follow.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/detail/overlay/follow.hpp	(original)
+++ trunk/boost/geometry/algorithms/detail/overlay/follow.hpp	2012-02-26 16:26:06 EST (Sun, 26 Feb 2012)
@@ -279,12 +279,12 @@
     {
         // In case of turn point at the same location, we want to have continue/blocked LAST
         // because that should be followed (intersection) or skipped (difference).
-        // By chance the enumeration is ordered like that but we keep the safe way here.
         inline int operation_order(Turn const& turn) const
         {
             operation_type const& operation = turn.operations[0].operation;
             switch(operation)
             {
+                case operation_opposite : return 0;
                 case operation_none : return 0;
                 case operation_union : return 1;
                 case operation_intersection : return 2;
Modified: trunk/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp
==============================================================================
--- trunk/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp	(original)
+++ trunk/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp	2012-02-26 16:26:06 EST (Sun, 26 Feb 2012)
@@ -278,7 +278,7 @@
                 if (side_pk_q1 == 0)
                 {
                     ti.operations[0].operation = operation_blocked;
-                    // Q turns right -> union (both independant),
+                    // Q turns right -> union (both independent),
                     // Q turns left -> intersection
                     ti.operations[1].operation = block_q ? operation_blocked
                         : q_turns_left ? operation_intersection
@@ -682,18 +682,11 @@
                 IntersectionInfo const& intersection_info,
                 DirInfo const& dir_info)
     {
-        /*
-        std::cout << "arrivals: "
-            << dir_info.arrival[0]
-            << "/" << dir_info.arrival[1]
-            << std::endl;
-        */
-
         TurnInfo tp = tp_model;
 
         tp.method = method_collinear;
 
-        // If P arrives within Q, there is a turn dependant on P
+        // If P arrives within Q, there is a turn dependent on P
         if (dir_info.arrival[0] == 1
             && set_tp<0>(pi, pj, pk, tp, intersection_info))
         {
@@ -701,7 +694,7 @@
             *out++ = tp;
         }
 
-        // If Q arrives within P, there is a turn dependant on Q
+        // If Q arrives within P, there is a turn dependent on Q
         if (dir_info.arrival[1] == 1
             && set_tp<1>(qi, qj, qk, tp, intersection_info))
         {
@@ -709,14 +702,6 @@
             *out++ = tp;
         }
 
-        // If P arrives within Q, there is a turn dependant on P
-        if (dir_info.arrival[0] == 1
-            && set_tp<0>(pi, pj, pk, tp, intersection_info))
-        {
-            AssignPolicy::apply(tp, pi, qi, intersection_info, dir_info);
-            *out++ = tp;
-        }
-
                 if (AssignPolicy::include_opposite)
                 {
                 // Handle cases not yet handled above