cartesian.hpp 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. // Boost.Geometry
  2. // Copyright (c) 2025 Adam Wulkiewicz, Lodz, Poland.
  3. // Copyright (c) 2020-2021, Oracle and/or its affiliates.
  4. // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
  5. // Licensed under the Boost Software License version 1.0.
  6. // http://www.boost.org/users/license.html
  7. #ifndef BOOST_GEOMETRY_STRATEGIES_CARTESIAN_HPP
  8. #define BOOST_GEOMETRY_STRATEGIES_CARTESIAN_HPP
  9. #include <boost/geometry/strategies/area/cartesian.hpp>
  10. #include <boost/geometry/strategies/azimuth/cartesian.hpp>
  11. #include <boost/geometry/strategies/buffer/cartesian.hpp>
  12. #include <boost/geometry/strategies/centroid/cartesian.hpp>
  13. #include <boost/geometry/strategies/closest_points/cartesian.hpp>
  14. #include <boost/geometry/strategies/convex_hull/cartesian.hpp>
  15. #include <boost/geometry/strategies/distance/cartesian.hpp>
  16. #include <boost/geometry/strategies/envelope/cartesian.hpp>
  17. #include <boost/geometry/strategies/expand/cartesian.hpp>
  18. #include <boost/geometry/strategies/io/cartesian.hpp>
  19. #include <boost/geometry/strategies/index/cartesian.hpp>
  20. #include <boost/geometry/strategies/is_convex/cartesian.hpp>
  21. #include <boost/geometry/strategies/relate/cartesian.hpp>
  22. #include <boost/geometry/strategies/simplify/cartesian.hpp>
  23. namespace boost { namespace geometry
  24. {
  25. namespace strategies
  26. {
  27. template <typename CalculationType = void>
  28. class cartesian
  29. // derived from the umbrella strategy defining the most strategies
  30. : public strategies::closest_points::cartesian<CalculationType>
  31. , public strategies::centroid::detail::cartesian<CalculationType>
  32. {
  33. public:
  34. static auto azimuth()
  35. {
  36. return strategy::azimuth::cartesian<CalculationType>();
  37. }
  38. static auto point_order()
  39. {
  40. return strategy::point_order::cartesian<CalculationType>();
  41. }
  42. };
  43. } // namespace strategies
  44. }} // namespace boost::geometry
  45. #endif // BOOST_GEOMETRY_STRATEGIES_CARTESIAN_HPP