mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-09 23:24:02 +00:00
Removed references to std_as_linestring/ring/multi_point and c_array* and boost_array* because there are now macros for that
[SVN r71824]
This commit is contained in:
parent
dbd742cbff
commit
1dc67c1bf5
134
doc/compiling.qbk
Normal file
134
doc/compiling.qbk
Normal file
@ -0,0 +1,134 @@
|
||||
[/==============================================================================
|
||||
Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
|
||||
Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
|
||||
Copyright (c) 2009-2011 Mateusz Loskot, London, UK., London, UK
|
||||
|
||||
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)
|
||||
===============================================================================/]
|
||||
|
||||
|
||||
|
||||
[section Compilation]
|
||||
|
||||
[def __msvc__ MSVC]
|
||||
[def __stlport__ [@http://sourceforge.net/projects/stlport STLport]]
|
||||
|
||||
__boost_geometry__ is a headers-only library. Users only need to include the
|
||||
library headers in their programs in order to be able to access definitions
|
||||
and algorithms provided by the __boost_geometry__ library. No linking against
|
||||
any binaries is required.
|
||||
|
||||
__boost_geometry__ is only dependant on headers-only __boost__ libraries.
|
||||
It does not introduce indirect dependencies on any binary libraries.
|
||||
|
||||
In order to be able to use __boost_geometry__, the only thing users need to do
|
||||
is to download and/or install Boost and specify location to include
|
||||
directories, so `include` directives of this scheme will work:
|
||||
|
||||
#include <boost/...>
|
||||
|
||||
[heading Supported Compilers]
|
||||
|
||||
__boost_geometry__ library has been successfully tested with the following
|
||||
compilers:
|
||||
|
||||
* __msvc__ (including Express Editions)
|
||||
* 10.0 (__msvc__ 2010) [/reported by Trunk report May 8, 2011]
|
||||
* 9.0 (__msvc__ 2008) [/reported by Trunk report May 8, 2011]
|
||||
* 8.0 (__msvc__ 2005) [/reported by Trunk report May 8, 2011]
|
||||
* gcc
|
||||
* gcc 4.6.1 [/reported by Trunk report May 8, 2011]
|
||||
* gcc 4.6.0 (including C++0x) [/reported by Trunk report May 8, 2011]
|
||||
* gcc 4.5.2 (including C++0x) [/reported by Trunk report May 8, 2011]
|
||||
* gcc 4.4.0 [/reported by Trunk report May 8, 2011]
|
||||
* gcc 4.3.4 [/reported by Trunk report March 26, 2011]
|
||||
* gcc 4.2.1 [/reported by Trunk report May 8, 2011]
|
||||
* gcc 3.4.6 [/reported by Trunk report March 26, 2011]
|
||||
* clang
|
||||
* clang x.x [/reported by Trunk report March 26, 2011]
|
||||
* darwin
|
||||
* darwin 4.0.1 [/reported by Trunk report March 26, 2011]
|
||||
* darwin 4.4 [/reported by Trunk report March 26, 2011]
|
||||
* intel
|
||||
* intel 11.1 [/reported by Trunk report March 26, 2011]
|
||||
* intel 11.0 [/reported by Trunk report March 26, 2011]
|
||||
* intel 10.1 [/reported by Trunk report March 26, 2011]
|
||||
* pathscale
|
||||
* pathscale 4.0.8 [/reported by Trunk report March 26, 2011]
|
||||
|
||||
__boost_geometry__ uses __boost_bb__, a text-based system for developing and
|
||||
testing software, to configure, build and execute unit tests and example
|
||||
programs. The build configuration is provided as a collection of `Jamfile.v2`
|
||||
files.
|
||||
|
||||
For gcc, flag [^-Wno-long-long] can be used to surpress some warnings
|
||||
originating from Boost.
|
||||
|
||||
[heading Includes]
|
||||
|
||||
The most convenient headerfile including all algorithms and strategies is
|
||||
`geometry.hpp`:
|
||||
|
||||
#include <boost/geometry.hpp>
|
||||
|
||||
This is the main header of the __boost_geometry__ library and it is
|
||||
recommended to include this file.
|
||||
|
||||
Alternatively, it is possible to include __boost_geometry__ header files
|
||||
separately. However, this may be inconvenient as header files might be renamed
|
||||
or moved occasionaly in future.
|
||||
|
||||
Another often used header is `geometries.hpp`:
|
||||
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
|
||||
This includes definitions of all provided geometry types: point,
|
||||
linestring, polygon, ring, box. The file `geometries.hpp` is not included in
|
||||
the `geometry.hpp` headerfile because users should be given the liberty to use
|
||||
their own geometries and not the provided ones. However, for the
|
||||
__boost_geometry__ users who want to use the provided geometries it is useful
|
||||
to include.
|
||||
|
||||
For users using multi-geometries:
|
||||
|
||||
#include <boost/geometry/multi/geometries/multi_geometries.hpp>
|
||||
|
||||
[heading Advanced Includes]
|
||||
|
||||
Users who have their own geometries and want to use algorithms from
|
||||
__boost_geometry__ might include the files containing registration
|
||||
macro's, like:
|
||||
|
||||
#include <boost/geometry/geometries/register/point.hpp>
|
||||
|
||||
[heading Performance]
|
||||
|
||||
The enumeration below is not exhaustive but can contain hints to improve the
|
||||
performance:
|
||||
|
||||
* For Microsoft __msvc__, set define `_SECURE_SCL=0` for preprocessor.
|
||||
* For Microsoft __msvc__, set define `_HAS_ITERATOR_DEBUGGING=0` for preprocessor.
|
||||
* Use of __stlport__, a popular open-source implementation of the STL, may result in
|
||||
significantly faster code than use of the C++ standard library provided by __msvc__.
|
||||
* Turn on compiler optimizations, compile in release mode.
|
||||
|
||||
[heading Problems with Intellisense]
|
||||
|
||||
Both versions of __msvc__, 2005 and 2008 (including Express Editions) can hang
|
||||
trying to resolve symbols and give [@http://en.wikipedia.org/wiki/IntelliSense
|
||||
IntelliSense] suggestions while typing in a bracket or angle bracket.
|
||||
This is not directly related to __boost_geometry__, but is caused by problems
|
||||
with handling by this IDE large C++ code base with intensively used templates,
|
||||
such as Boost and __boost_geometry__. If this is inconvenient, IntelliSense
|
||||
can be turned off:
|
||||
|
||||
[:['["(...)disabling IntelliSense in VC++. There is a file called `feacp.dll` in
|
||||
`<VS8INSTALL>/VC/vcpackages` folder. Renaming this file will disable Intellisense feature.]]
|
||||
|
||||
-- [@http://blogs.msdn.com/yash/archive/2007/09/19/intellisense-issues-in-visual-c-2005.aspx Intellisense issues in Visual C++ 2005]
|
||||
]
|
||||
|
||||
|
||||
[endsect] [/ end of Compilation]
|
@ -131,12 +131,6 @@ If you want to use your own points it makes sense to use the registration macro'
|
||||
- \#include <boost/geometry/geometries/register/box.hpp> macro's for box registration
|
||||
|
||||
|
||||
If you are using standard containers containing points and want to handle them as a linestring
|
||||
- \#include <boost/geometry/geometries/adapted/std_as_linestring.hpp> allows you to use things like \c std::vector<point_2d>
|
||||
and put them as parameters into algorithms.
|
||||
|
||||
If you are using boost tuples and want to handle them as Cartesian points
|
||||
- \#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
|
||||
|
||||
|
||||
\section extension_includes Extensions
|
||||
|
@ -20,7 +20,6 @@ OBSOLETE
|
||||
#include <boost/geometry/geometry.hpp>
|
||||
#include <boost/geometry/geometries/register/point.hpp>
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
#include <boost/geometry/domains/gis/io/wkt/wkt.hpp>
|
||||
|
||||
|
@ -22,9 +22,6 @@ OBSOLETE
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/register/point.hpp>
|
||||
#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array_cartesian.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
|
||||
// Small QRect simulations following http://doc.trolltech.com/4.4/qrect.html
|
||||
|
@ -13,9 +13,6 @@ OBSOLETE
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
#include <boost/geometry/geometry.hpp>
|
||||
#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array_cartesian.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
|
||||
|
||||
|
@ -16,10 +16,12 @@
|
||||
#include <boost/geometry.hpp>
|
||||
#include <boost/geometry/domains/gis/io/wkt/wkt.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp> /*< Adapts std::vector to linestring concept >*/
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
|
@ -15,7 +15,6 @@
|
||||
#include <boost/geometry.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/domains/gis/io/wkt/wkt.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp> /*< Adapts std::vector to linestring concept >*/
|
||||
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
|
@ -20,12 +20,16 @@
|
||||
#include <boost/geometry/geometries/linestring.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/polygon.hpp>
|
||||
// Optional includes to handle c-arrays as points, std::vectors as linestrings
|
||||
|
||||
// Optional includes and defines to handle c-arrays as points, std::vectors as linestrings
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template<typename P>
|
||||
inline void translate_function(P& p)
|
||||
@ -134,11 +138,6 @@ int main(void)
|
||||
<< "as vector: "
|
||||
<< dsv(v)
|
||||
<< std::endl;
|
||||
|
||||
std::cout
|
||||
<< "as it-pair: "
|
||||
<< dsv(std::make_pair(v.begin(), v.end()))
|
||||
<< std::endl;
|
||||
}
|
||||
|
||||
// All algorithms from std can be used: a linestring is a vector
|
||||
|
@ -18,7 +18,6 @@
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/polygon.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/multi/geometries/multi_polygon.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
|
@ -16,7 +16,6 @@
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/polygon.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
|
||||
@ -39,7 +38,7 @@ int main()
|
||||
model::polygon<point_2d> poly, poly2;
|
||||
const double coor[][2] = { {0, 0}, {0, 7}, {2, 2}, {2, 0}, {0, 0} };
|
||||
// note that for this syntax you have to include the two
|
||||
// include files above (c_array.hpp, std_as_linestring.hpp)
|
||||
// include files above (c_array.hpp)
|
||||
assign_points(poly, coor);
|
||||
//read_wkt("POLYGON((0 0,0 7,4 2,2 0,0 0))", poly);
|
||||
transform(poly, poly2, translate);
|
||||
|
@ -20,9 +20,12 @@
|
||||
#include <boost/geometry/algorithms/intersection.hpp>
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
#include <boost/geometry/strategies/strategies.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
// Sample point, having x/y
|
||||
struct my_point
|
||||
{
|
||||
@ -113,7 +116,5 @@ int main()
|
||||
delete p;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -15,8 +15,10 @@
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
#include <boost/geometry/geometry.hpp>
|
||||
#include <boost/geometry/geometries/register/ring.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_RING_TEMPLATED(std::vector)
|
||||
|
||||
#include <boost/geometry/geometries/adapted/std_as_ring.hpp>
|
||||
|
||||
// Sample point, having x/y
|
||||
struct my_point
|
||||
|
@ -12,7 +12,6 @@
|
||||
|
||||
#include <boost/geometry/geometry.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_ring.hpp>
|
||||
#include <boost/geometry/geometries/register/point.hpp>
|
||||
#include <boost/geometry/multi/geometries/multi_polygon.hpp>
|
||||
#include <boost/geometry/extensions/io/svg/write_svg.hpp>
|
||||
|
@ -24,12 +24,14 @@
|
||||
#include <boost/geometry/algorithms/append.hpp>
|
||||
#include <boost/geometry/algorithms/num_points.hpp>
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <test_common/test_point.hpp>
|
||||
#include <test_geometries/wrapped_boost_array.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G>
|
||||
void test_geometry(bool check = true)
|
||||
@ -77,8 +79,6 @@ void test_all()
|
||||
test_geometry<std::vector<P> >();
|
||||
test_geometry<std::deque<P> >();
|
||||
//test_geometry<std::list<P> >();
|
||||
|
||||
test_geometry<test::wrapped_boost_array<P, 3> >();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -19,10 +19,10 @@
|
||||
#include <algorithms/test_distance.hpp>
|
||||
|
||||
#include <boost/mpl/if.hpp>
|
||||
#include <boost/array.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
@ -33,6 +33,16 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
// Register boost array as a linestring
|
||||
namespace boost { namespace geometry { namespace traits
|
||||
{
|
||||
template <typename Point, std::size_t PointCount>
|
||||
struct tag< boost::array<Point, PointCount> >
|
||||
{
|
||||
typedef linestring_tag type;
|
||||
};
|
||||
|
||||
}}}
|
||||
|
||||
template <typename P>
|
||||
void test_distance_point()
|
||||
|
@ -23,13 +23,16 @@
|
||||
#include <algorithms/test_intersection.hpp>
|
||||
#include <algorithms/test_overlay.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/point_xy.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <test_common/test_point.hpp>
|
||||
#include <test_common/with_pointer.hpp>
|
||||
#include <test_geometries/custom_segment.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
|
||||
|
||||
static std::string pie_2_3_23_0[2] =
|
||||
{
|
||||
"POLYGON((2500 2500,2855 3828,2500 3875,2500 2500))",
|
||||
|
@ -816,8 +816,6 @@ void test_all()
|
||||
|
||||
|
||||
/***
|
||||
#include <boost/geometry/geometries/adapted/c_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array_as_ring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
|
||||
|
@ -19,8 +19,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -28,6 +27,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, int Expected>
|
||||
void test_geometry()
|
||||
@ -49,8 +51,6 @@ void test_all()
|
||||
|
||||
test_geometry<std::vector<P>, D>();
|
||||
test_geometry<std::deque<P>, D>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, D>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -19,8 +19,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -28,6 +27,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, typename Expected>
|
||||
void test_geometry()
|
||||
@ -50,8 +52,6 @@ void test_all()
|
||||
|
||||
test_geometry<std::vector<P>, Expected>();
|
||||
test_geometry<std::deque<P>, Expected>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, Expected>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -19,8 +19,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -28,6 +27,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, typename Expected>
|
||||
void test_geometry()
|
||||
@ -50,8 +52,6 @@ void test_all()
|
||||
|
||||
test_geometry<std::vector<P>, Expected>();
|
||||
test_geometry<std::deque<P>, Expected>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, Expected>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -18,8 +18,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -27,6 +26,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, int Expected>
|
||||
void test_geometry()
|
||||
@ -48,8 +50,6 @@ void test_all()
|
||||
|
||||
test_geometry<std::vector<P>, 2>();
|
||||
test_geometry<std::deque<P>, 2>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, 2>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -18,8 +18,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -27,6 +26,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, typename Expected>
|
||||
void test_geometry()
|
||||
@ -49,8 +51,6 @@ void test_all()
|
||||
|
||||
test_geometry<std::vector<P>, P>();
|
||||
test_geometry<std::deque<P>, P>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, P>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -17,8 +17,7 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -26,6 +25,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, typename Expected>
|
||||
void test_geometry()
|
||||
@ -49,7 +51,6 @@ void test_all()
|
||||
test_geometry<std::vector<P>, bg::linestring_tag>();
|
||||
test_geometry<std::deque<P>, bg::linestring_tag>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, bg::linestring_tag>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -14,11 +14,10 @@
|
||||
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
@ -26,6 +25,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
|
||||
template <typename G, int Expected>
|
||||
void test_geometry()
|
||||
@ -48,7 +50,6 @@ void test_all()
|
||||
test_geometry<std::vector<P>, 1>();
|
||||
test_geometry<std::deque<P>, 1>();
|
||||
|
||||
test_geometry<boost::array<P, 5>, 1>();
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -15,41 +15,42 @@
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/multi/multi.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <test_common/test_point.hpp>
|
||||
|
||||
#define BOOST_GEOMETRY_TEST_RING
|
||||
|
||||
|
||||
|
||||
#if defined(BOOST_GEOMETRY_TEST_RING)
|
||||
|
||||
#include <boost/geometry/geometries/concepts/ring_concept.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_ring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array_as_ring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_ring.hpp>
|
||||
#include <boost/geometry/geometries/register/ring.hpp>
|
||||
#include <boost/geometry/geometries/concepts/ring_concept.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_RING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_RING_TEMPLATED(std::deque)
|
||||
|
||||
#elif defined(BOOST_GEOMETRY_TEST_MULTI_POINT)
|
||||
|
||||
#include <boost/geometry/multi/geometries/concepts/multi_point_concept.hpp>
|
||||
|
||||
#include <boost/geometry/multi/geometries/adapted/boost_array_as_multi_point.hpp>
|
||||
#include <boost/geometry/multi/geometries/adapted/c_array_as_multi_point.hpp>
|
||||
#include <boost/geometry/multi/geometries/adapted/std_as_multi_point.hpp>
|
||||
|
||||
#include <boost/geometry/multi/geometries/register/multi_point.hpp>
|
||||
#include <boost/geometry/multi/geometries/concepts/multi_point_concept.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_MULTI_POINT_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_MULTI_POINT_TEMPLATED(std::deque)
|
||||
|
||||
#else
|
||||
#include <boost/geometry/geometries/concepts/linestring_concept.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
#include <boost/geometry/geometries/concepts/linestring_concept.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
|
||||
#include <test_common/test_point.hpp>
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
@ -82,16 +83,14 @@ void test_all()
|
||||
test_geometry(std::deque<P>());
|
||||
//test_geometry(std::list<P>());
|
||||
|
||||
|
||||
test_geometry(boost::array<P, 5>(), 5);
|
||||
|
||||
|
||||
/***
|
||||
double vertices[][3] = {
|
||||
{-1, -1, 1}, {1, -1, 1}, {1, 1, 1}, {-1, 1, 1},
|
||||
{-1, -1, -1}, {1, -1, -1}, {1, 1, -1}, {-1, 1, -1}
|
||||
};
|
||||
|
||||
test_geometry(vertices, 8);
|
||||
***/
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
|
@ -11,11 +11,19 @@
|
||||
|
||||
|
||||
#include <boost/geometry/geometry.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/box.hpp>
|
||||
#include <boost/geometry/geometries/point.hpp>
|
||||
#include <boost/geometry/geometries/polygon.hpp>
|
||||
#include <boost/geometry/geometries/ring.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_polygon/point.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_polygon/box.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_polygon/ring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_polygon/polygon.hpp>
|
||||
|
||||
#include <boost/geometry/domains/gis/io/wkt/wkt.hpp>
|
||||
|
||||
#include <iostream>
|
||||
|
||||
template <typename T>
|
||||
|
@ -25,8 +25,7 @@
|
||||
|
||||
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/register/linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/c_array.hpp>
|
||||
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
|
||||
#include <test_common/test_point.hpp>
|
||||
@ -34,6 +33,9 @@
|
||||
BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian)
|
||||
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
|
||||
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::vector)
|
||||
BOOST_GEOMETRY_REGISTER_LINESTRING_TEMPLATED(std::deque)
|
||||
|
||||
//#define TEST_FAIL_CLEAR
|
||||
//#define TEST_FAIL_APPEND
|
||||
|
||||
|
@ -18,8 +18,6 @@
|
||||
#include <boost/geometry/geometries/adapted/c_array_cartesian.hpp>
|
||||
#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
|
||||
|
||||
#include <boost/geometry/geometries/adapted/boost_array_as_linestring.hpp>
|
||||
#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
|
||||
|
||||
#include <vector>
|
||||
#include <deque>
|
||||
|
Loading…
x
Reference in New Issue
Block a user