Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r78691 - in trunk/libs/geometry/test: algorithms multi multi/algorithms
From: barend.gehrels_at_[hidden]
Date: 2012-05-27 13:47:29


Author: barendgehrels
Date: 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
New Revision: 78691
URL: http://svn.boost.org/trac/boost/changeset/78691

Log:
[geometry] added touch - unit tests
Added:
   trunk/libs/geometry/test/algorithms/test_touches.hpp (contents, props changed)
   trunk/libs/geometry/test/algorithms/touches.cpp (contents, props changed)
   trunk/libs/geometry/test/algorithms/touches.vcproj (contents, props changed)
   trunk/libs/geometry/test/multi/algorithms/multi_touches.cpp (contents, props changed)
   trunk/libs/geometry/test/multi/algorithms/multi_touches.vcproj (contents, props changed)
Text files modified:
   trunk/libs/geometry/test/algorithms/Jamfile.v2 | 1 +
   trunk/libs/geometry/test/algorithms/algorithms_tests.sln | 6 ++++++
   trunk/libs/geometry/test/multi/algorithms/Jamfile.v2 | 1 +
   trunk/libs/geometry/test/multi/multi_tests.sln | 6 ++++++
   4 files changed, 14 insertions(+), 0 deletions(-)

Modified: trunk/libs/geometry/test/algorithms/Jamfile.v2
==============================================================================
--- trunk/libs/geometry/test/algorithms/Jamfile.v2 (original)
+++ trunk/libs/geometry/test/algorithms/Jamfile.v2 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -35,6 +35,7 @@
     [ run perimeter.cpp ]
     [ run reverse.cpp ]
     [ run simplify.cpp ]
+ [ run touches.cpp ]
     [ run transform.cpp ]
     [ run union.cpp ]
     [ run unique.cpp ]

Modified: trunk/libs/geometry/test/algorithms/algorithms_tests.sln
==============================================================================
--- trunk/libs/geometry/test/algorithms/algorithms_tests.sln (original)
+++ trunk/libs/geometry/test/algorithms/algorithms_tests.sln 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -58,6 +58,8 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "covered_by", "covered_by.vcproj", "{5ABF0B56-F9F1-4D93-B15A-E3972F45D97B}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "touches", "touches.vcproj", "{8359726E-9F03-4300-8F63-1FEAC84251D0}"
+EndProject
 Global
         GlobalSection(SolutionConfigurationPlatforms) = preSolution
                 Debug|Win32 = Debug|Win32
@@ -180,6 +182,10 @@
                 {5ABF0B56-F9F1-4D93-B15A-E3972F45D97B}.Debug|Win32.Build.0 = Debug|Win32
                 {5ABF0B56-F9F1-4D93-B15A-E3972F45D97B}.Release|Win32.ActiveCfg = Release|Win32
                 {5ABF0B56-F9F1-4D93-B15A-E3972F45D97B}.Release|Win32.Build.0 = Release|Win32
+ {8359726E-9F03-4300-8F63-1FEAC84251D0}.Debug|Win32.ActiveCfg = Debug|Win32
+ {8359726E-9F03-4300-8F63-1FEAC84251D0}.Debug|Win32.Build.0 = Debug|Win32
+ {8359726E-9F03-4300-8F63-1FEAC84251D0}.Release|Win32.ActiveCfg = Release|Win32
+ {8359726E-9F03-4300-8F63-1FEAC84251D0}.Release|Win32.Build.0 = Release|Win32
         EndGlobalSection
         GlobalSection(SolutionProperties) = preSolution
                 HideSolutionNode = FALSE

Added: trunk/libs/geometry/test/algorithms/test_touches.hpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/test/algorithms/test_touches.hpp 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -0,0 +1,61 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+// Unit Test
+
+// Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
+// Use, modification and distribution is subject to 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)
+
+#ifndef BOOST_GEOMETRY_TEST_TOUCHES_HPP
+#define BOOST_GEOMETRY_TEST_TOUCHES_HPP
+
+
+#include <geometry_test_common.hpp>
+
+#include <boost/geometry/core/ring_type.hpp>
+#include <boost/geometry/algorithms/touches.hpp>
+#include <boost/geometry/strategies/strategies.hpp>
+#include <boost/geometry/geometries/ring.hpp>
+#include <boost/geometry/geometries/polygon.hpp>
+
+#include <boost/geometry/io/wkt/read.hpp>
+
+
+template <typename Geometry1, typename Geometry2>
+void test_touches(std::string const& wkt1,
+ std::string const& wkt2, bool expected)
+{
+ Geometry1 geometry1;
+ Geometry2 geometry2;
+
+ bg::read_wkt(wkt1, geometry1);
+ bg::read_wkt(wkt2, geometry2);
+
+ bool detected = bg::touches(geometry1, geometry2);
+
+ BOOST_CHECK_MESSAGE(detected == expected,
+ "touches: " << wkt1
+ << " with " << wkt2
+ << " -> Expected: " << expected
+ << " detected: " << detected);
+}
+
+
+template <typename Geometry>
+void test_self_touches(std::string const& wkt, bool expected)
+{
+ Geometry geometry;
+
+ bg::read_wkt(wkt, geometry);
+
+ bool detected = bg::touches(geometry);
+
+ BOOST_CHECK_MESSAGE(detected == expected,
+ "touches: " << wkt
+ << " -> Expected: " << expected
+ << " detected: " << detected);
+}
+
+
+
+#endif

Added: trunk/libs/geometry/test/algorithms/touches.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/test/algorithms/touches.cpp 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -0,0 +1,154 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+//
+// Copyright (c) 2012 Barend Gehrels, Amsterdam, the Netherlands.
+// Use, modification and distribution is subject to 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)
+
+#include <algorithms/test_touches.hpp>
+
+
+#include <boost/geometry/geometries/geometries.hpp>
+#include <boost/geometry/geometries/point_xy.hpp>
+
+
+
+template <typename P>
+void test_all()
+{
+ typedef bg::model::polygon<P> polygon;
+
+ // Just a normal polygon
+ test_self_touches<polygon>("POLYGON((0 0,0 4,1.5 2.5,2.5 1.5,4 0,0 0))", false);
+
+ // Self intersecting
+ test_self_touches<polygon>("POLYGON((1 2,1 1,2 1,2 2.25,3 2.25,3 0,0 0,0 3,3 3,2.75 2,1 2))", false);
+
+ // Self touching at a point
+ test_self_touches<polygon>("POLYGON((0 0,0 3,2 3,2 2,1 2,1 1,2 1,2 2,3 2,3 0,0 0))", true);
+
+ // Self touching at a segment
+ test_self_touches<polygon>("POLYGON((0 0,0 3,2 3,2 2,1 2,1 1,2 1,2 2.5,3 2.5,3 0,0 0))", true);
+
+ // Touching at corner
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((100 100,100 200,200 200, 200 100,100 100))",
+ true
+ );
+
+ // Intersecting at corner
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,101 101,100 0,0 0))",
+ "POLYGON((100 100,100 200,200 200, 200 100,100 100))",
+ false
+ );
+
+ // Touching at side (interior of a segment)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((200 0,100 50,200 100,200 0))",
+ true
+ );
+
+ // Touching at side (partly collinear)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((200 20,100 20,100 80,200 80,200 20))",
+ true
+ );
+
+ // Completely equal
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ false
+ );
+
+ // Spatially equal
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((0 0,0 100,100 100,100 80,100 20,100 0,0 0))",
+ false
+ );
+
+ // Spatially equal (without equal segments)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((0 0,0 50,0 100,50 100,100 100,100 50,100 0,50 0,0 0))",
+ false
+ );
+
+
+ // Touching at side (opposite equal)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((200 0,100 0,100 100,200 100,200 0))",
+ true
+ );
+
+ // Touching at side (opposite equal - but with real "equal" turning point)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 80,100 20,100 0,0 0))",
+ "POLYGON((200 0,100 0,100 20,100 80,100 100,200 100,200 0))",
+ true
+ );
+ // First partly collinear to side, than overlapping
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((200 20,100 20,100 50,50 50,50 80,100 80,200 80,200 20))",
+ false
+ );
+
+ // Touching interior (= no touch)
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0))",
+ "POLYGON((20 20,20 80,100 50,20 20))",
+ false
+ );
+
+ // Fitting in hole
+ test_touches<polygon, polygon>
+ (
+ "POLYGON((0 0,0 100,100 100,100 0,0 0),(40 40,60 40,60 60,40 60,40 40))",
+ "POLYGON((40 40,40 60,60 60,60 40,40 40))",
+ true
+ );
+
+}
+
+
+
+
+int test_main( int , char* [] )
+{
+ test_all<bg::model::d2::point_xy<double> >();
+
+
+#if defined(HAVE_TTMATH)
+ test_all<bg::model::d2::point_xy<ttmath_big> >();
+#endif
+
+ return 0;
+}
+
+/*
+with viewy as
+(
+select geometry::STGeomFromText('POLYGON((0 0,0 100,100 100,100 0,0 0))',0) as p
+ , geometry::STGeomFromText('POLYGON((200 0,100 50,200 100,200 0))',0) as q
+)
+-- select p from viewy union all select q from viewy
+select p.STTouches(q) from viewy
+*/
\ No newline at end of file

Added: trunk/libs/geometry/test/algorithms/touches.vcproj
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/test/algorithms/touches.vcproj 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="touches"
+ ProjectGUID="{8359726E-9F03-4300-8F63-1FEAC84251D0}"
+ RootNamespace="touches"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)\touches"
+ ConfigurationType="1"
+ InheritedPropertySheets="..\boost.vsprops;..\ttmath.vsprops"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../..;.."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;NONDLL;_CRT_SECURE_NO_WARNINGS"
+ ExceptionHandling="2"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ DebugInformationFormat="1"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)\touches"
+ ConfigurationType="1"
+ InheritedPropertySheets="..\boost.vsprops;..\ttmath.vsprops"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../..;.."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;NONDLL;_CRT_SECURE_NO_WARNINGS"
+ ExceptionHandling="2"
+ UsePrecompiledHeader="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <File
+ RelativePath=".\touches.cpp"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: trunk/libs/geometry/test/multi/algorithms/Jamfile.v2
==============================================================================
--- trunk/libs/geometry/test/multi/algorithms/Jamfile.v2 (original)
+++ trunk/libs/geometry/test/multi/algorithms/Jamfile.v2 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -30,6 +30,7 @@
     [ run multi_perimeter.cpp ]
     [ run multi_reverse.cpp ]
     [ run multi_simplify.cpp ]
+ [ run multi_touches.cpp ]
     [ run multi_transform.cpp ]
     [ run multi_union.cpp ]
     [ run multi_unique.cpp ]

Added: trunk/libs/geometry/test/multi/algorithms/multi_touches.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/test/multi/algorithms/multi_touches.cpp 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -0,0 +1,80 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+//
+// Copyright (c) 2010-2012 Barend Gehrels, Amsterdam, the Netherlands.
+// Use, modification and distribution is subject to 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)
+
+
+#include <algorithms/test_touches.hpp>
+
+#include <boost/geometry/multi/algorithms/area.hpp>
+#include <boost/geometry/multi/algorithms/num_geometries.hpp>
+#include <boost/geometry/multi/algorithms/within.hpp>
+#include <boost/geometry/multi/algorithms/detail/sections/range_by_section.hpp>
+#include <boost/geometry/multi/algorithms/detail/sections/sectionalize.hpp>
+#include <boost/geometry/multi/algorithms/detail/for_each_range.hpp>
+#include <boost/geometry/multi/core/closure.hpp>
+#include <boost/geometry/multi/core/geometry_id.hpp>
+#include <boost/geometry/multi/core/ring_type.hpp>
+#include <boost/geometry/multi/views/detail/range_type.hpp>
+
+#include <boost/geometry/geometries/geometries.hpp>
+#include <boost/geometry/geometries/point_xy.hpp>
+#include <boost/geometry/multi/geometries/multi_polygon.hpp>
+
+#include <boost/geometry/multi/io/wkt/read.hpp>
+
+
+
+template <typename P>
+void test_all()
+{
+ typedef bg::model::polygon<P> polygon;
+ typedef bg::model::multi_polygon<polygon> mp;
+
+ test_self_touches<mp>("MULTIPOLYGON(((0 0,0 100,100 100,100 0,0 0)))",
+ false);
+
+ // Exactly equal
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 100,100 100,100 0,0 0)))",
+ "MULTIPOLYGON(((0 0,0 100,100 100,100 0,0 0)))",
+ false);
+
+ // Spatially equal
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 100,100 100,100 0,0 0)))",
+ "MULTIPOLYGON(((0 0,0 100,100 100,100 80,100 20,100 0,0 0)))",
+ false);
+
+ // One exactly equal, another pair touching
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((20 0,20 10,30 10,30 0,20 0)))",
+ "MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((30 10,30 20,40 20,40 10,30 10)))",
+ false);
+
+ // One spatially equal (without equal segments), another pair touching
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 5,0 10,5 10,10 10,10 5,10 0,5 0,0 0)),((20 0,20 10,30 10,30 0,20 0)))",
+ "MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((30 10,30 20,40 20,40 10,30 10)))",
+ false);
+
+ // Alternate touches
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((20 0,20 10,30 10,30 0,20 0)))",
+ "MULTIPOLYGON(((10 10,10 20,20 20,20 10,10 10)),((30 10,30 20,40 20,40 10,30 10)))",
+ true);
+
+ // Touch plus inside
+ // TODO fix this
+ test_touches<mp, mp>("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((20 0,20 10,30 10,30 0,20 0)))",
+ "MULTIPOLYGON(((10 10,10 20,20 20,20 10,10 10)),((22 2,28 2,28 8,22 8,22 2)))",
+ false);
+}
+
+int test_main( int , char* [] )
+{
+ test_all<bg::model::d2::point_xy<double> >();
+
+#ifdef HAVE_TTMATH
+ test_all<bg::model::d2::point_xy<ttmath_big> >();
+#endif
+
+ return 0;
+}

Added: trunk/libs/geometry/test/multi/algorithms/multi_touches.vcproj
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/test/multi/algorithms/multi_touches.vcproj 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8,00"
+ Name="multi_touches"
+ ProjectGUID="{108173B8-B6F4-4366-8018-2BF282ED4881}"
+ RootNamespace="multi_touches"
+ Keyword="Win32Proj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)\multi_touches"
+ ConfigurationType="1"
+ InheritedPropertySheets="..\..\boost.vsprops;..\..\ttmath.vsprops"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../..;../..;."
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ ExceptionHandling="2"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="0"
+ DebugInformationFormat="1"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)\multi_touches"
+ ConfigurationType="1"
+ InheritedPropertySheets="..\..\boost.vsprops;..\..\ttmath.vsprops"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../..;../..;."
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ ExceptionHandling="2"
+ UsePrecompiledHeader="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCWebDeploymentTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <File
+ RelativePath=".\multi_touches.cpp"
+ >
+ </File>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>

Modified: trunk/libs/geometry/test/multi/multi_tests.sln
==============================================================================
--- trunk/libs/geometry/test/multi/multi_tests.sln (original)
+++ trunk/libs/geometry/test/multi/multi_tests.sln 2012-05-27 13:47:28 EDT (Sun, 27 May 2012)
@@ -48,6 +48,8 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_disjoint", "algorithms\multi_disjoint.vcproj", "{5DEA6558-9DF7-42D4-AF10-4D6D8BB7EAD1}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_touches", "algorithms\multi_touches.vcproj", "{108173B8-B6F4-4366-8018-2BF282ED4881}"
+EndProject
 Global
         GlobalSection(SolutionConfigurationPlatforms) = preSolution
                 Debug|Win32 = Debug|Win32
@@ -150,6 +152,10 @@
                 {5DEA6558-9DF7-42D4-AF10-4D6D8BB7EAD1}.Debug|Win32.Build.0 = Debug|Win32
                 {5DEA6558-9DF7-42D4-AF10-4D6D8BB7EAD1}.Release|Win32.ActiveCfg = Release|Win32
                 {5DEA6558-9DF7-42D4-AF10-4D6D8BB7EAD1}.Release|Win32.Build.0 = Release|Win32
+ {108173B8-B6F4-4366-8018-2BF282ED4881}.Debug|Win32.ActiveCfg = Debug|Win32
+ {108173B8-B6F4-4366-8018-2BF282ED4881}.Debug|Win32.Build.0 = Debug|Win32
+ {108173B8-B6F4-4366-8018-2BF282ED4881}.Release|Win32.ActiveCfg = Release|Win32
+ {108173B8-B6F4-4366-8018-2BF282ED4881}.Release|Win32.Build.0 = Release|Win32
         EndGlobalSection
         GlobalSection(SolutionProperties) = preSolution
                 HideSolutionNode = FALSE


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