centroid.hpp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. // Boost.Geometry (aka GGL, Generic Geometry Library)
  2. // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
  3. // Copyright (c) 2008-2012 Bruno Lalande, Paris, France.
  4. // Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
  5. // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
  6. // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
  7. // Use, modification and distribution is subject to the Boost Software License,
  8. // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  9. // http://www.boost.org/LICENSE_1_0.txt)
  10. #ifndef BOOST_GEOMETRY_STRATEGIES_CENTROID_HPP
  11. #define BOOST_GEOMETRY_STRATEGIES_CENTROID_HPP
  12. #include <cstddef>
  13. #include <boost/mpl/assert.hpp>
  14. #include <boost/geometry/core/tags.hpp>
  15. #include <boost/geometry/strategies/tags.hpp>
  16. namespace boost { namespace geometry
  17. {
  18. namespace strategy { namespace centroid
  19. {
  20. struct not_applicable_strategy
  21. {
  22. };
  23. namespace services
  24. {
  25. /*!
  26. \brief Traits class binding a centroid calculation strategy to a coordinate system
  27. \ingroup centroid
  28. \tparam CsTag tag of coordinate system, for specialization
  29. \tparam GeometryTag tag of geometry, for specialization
  30. \tparam Dimension dimension of geometry, for specialization
  31. \tparam Point point-type
  32. \tparam Geometry
  33. */
  34. template
  35. <
  36. typename CsTag,
  37. typename GeometryTag,
  38. std::size_t Dimension,
  39. typename Point,
  40. typename Geometry
  41. >
  42. struct default_strategy
  43. {
  44. typedef not_applicable_strategy type;
  45. };
  46. } // namespace services
  47. }} // namespace strategy::centroid
  48. }} // namespace boost::geometry
  49. #endif // BOOST_GEOMETRY_STRATEGIES_CENTROID_HPP