Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:36:42

0001 // Boost.Geometry
0002 
0003 // Copyright (c) 2021, Oracle and/or its affiliates.
0004 
0005 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
0006 
0007 // Licensed under the Boost Software License version 1.0.
0008 // http://www.boost.org/users/license.html
0009 
0010 #ifndef BOOST_GEOMETRY_STRATEGIES_AZIMUTH_SPHERICAL_HPP
0011 #define BOOST_GEOMETRY_STRATEGIES_AZIMUTH_SPHERICAL_HPP
0012 
0013 
0014 // TODO: move this file to boost/geometry/strategy
0015 #include <boost/geometry/strategies/spherical/azimuth.hpp>
0016 
0017 #include <boost/geometry/strategies/azimuth/services.hpp>
0018 #include <boost/geometry/strategies/detail.hpp>
0019 
0020 
0021 namespace boost { namespace geometry
0022 {
0023 
0024 namespace strategies { namespace azimuth
0025 {
0026 
0027 template <typename CalculationType = void>
0028 class spherical : strategies::detail::spherical_base<void>
0029 {
0030     using base_t = strategies::detail::spherical_base<void>;
0031 
0032 public:
0033 
0034     static auto azimuth()
0035     {
0036         return strategy::azimuth::spherical<CalculationType>();
0037     }
0038 };
0039 
0040 
0041 namespace services
0042 {
0043 
0044 
0045 template <typename Point1, typename Point2>
0046 struct default_strategy<Point1, Point2, spherical_equatorial_tag, spherical_equatorial_tag>
0047 {
0048     using type = strategies::azimuth::spherical<>;
0049 };
0050 
0051 template <typename CT>
0052 struct strategy_converter<strategy::azimuth::spherical<CT> >
0053 {
0054     static auto get(strategy::azimuth::spherical<CT> const&)
0055     {
0056         return strategies::azimuth::spherical<CT>();
0057     }
0058 };
0059 
0060 
0061 } // namespace services
0062 
0063 }} // namespace strategies::azimuth
0064 
0065 }} // namespace boost::geometry
0066 
0067 #endif // BOOST_GEOMETRY_STRATEGIES_AZIMUTH_SPHERICAL_HPP