$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r57289 - sandbox/ggl/other/comparisons/ggl
From: barend.gehrels_at_[hidden]
Date: 2009-11-02 10:55:32
Author: barendgehrels
Date: 2009-11-02 10:55:31 EST (Mon, 02 Nov 2009)
New Revision: 57289
URL: http://svn.boost.org/trac/boost/changeset/57289
Log:
Reflection to changes in GGL
Text files modified: 
   sandbox/ggl/other/comparisons/ggl/ggl_check.cpp |    15 +++++++++++++--                         
   1 files changed, 13 insertions(+), 2 deletions(-)
Modified: sandbox/ggl/other/comparisons/ggl/ggl_check.cpp
==============================================================================
--- sandbox/ggl/other/comparisons/ggl/ggl_check.cpp	(original)
+++ sandbox/ggl/other/comparisons/ggl/ggl_check.cpp	2009-11-02 10:55:31 EST (Mon, 02 Nov 2009)
@@ -22,6 +22,7 @@
 #include <ggl/ggl.hpp>
 #include <ggl/geometries/geometries.hpp>
 
+
 #if defined(OUTPUT_ORACLE)
 #  include <ggl/io/oracle/write_oracle.hpp>
 #endif
@@ -300,7 +301,7 @@
         {
             POLY::ring_type ring;
             //std::cout << ggl::wkt<POLY>(*it) << std::endl;
-            ggl::convex_hull(*it, std::back_inserter(ring));
+            ggl::convex_hull_inserter(*it, std::back_inserter(ring));
             if (compare::HULL_AREA)
             {
                 area += fabs(ggl::area(ring));
@@ -500,7 +501,17 @@
                     std::cout << std::setprecision(16) << ggl::wkt(*it) << std::endl;
                 }
                 ***/
-                if (ggl::within(p, *bit) && ggl::within(p, *it))
+
+                // Windings           : 0.093 s
+                // Franklin           : 0.047 s
+                // Crossings-multiply : 0.062 s
+                // But note that they have different properties for "on border" cases
+
+                //ggl::strategy::within::windings<POINT> strategy;
+                ggl::strategy::within::franklin<POINT> strategy;
+                //ggl::strategy::within::crossings_multiply<POINT> strategy;
+
+                if (ggl::within(p, *bit) && ggl::within(p, *it, strategy))
                 {
                     //std::cout << e << " IN " << k << std::endl;
                     count++;