Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:35:47

0001 // Boost.Geometry
0002 
0003 // Copyright (c) 2018, Oracle and/or its affiliates.
0004 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
0005 
0006 // Use, modification and distribution is subject to the Boost Software License,
0007 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
0008 // http://www.boost.org/LICENSE_1_0.txt)
0009 
0010 
0011 #ifndef BOOST_GEOMETRY_PROJECTIONS_CONSTANTS_HPP
0012 #define BOOST_GEOMETRY_PROJECTIONS_CONSTANTS_HPP
0013 
0014 
0015 #include <boost/geometry/util/math.hpp>
0016 #include <boost/math/constants/constants.hpp>
0017 
0018 
0019 namespace boost { namespace geometry { namespace projections
0020 {
0021 
0022 #ifndef DOXYGEN_NO_DETAIL
0023 namespace detail
0024 {
0025 
0026 
0027 template <typename T>
0028 inline T fourth_pi() { return T(0.78539816339744830961566084581988); }
0029 template <typename T>
0030 inline T third_pi() { return boost::math::constants::third_pi<T>(); }
0031 template <typename T>
0032 inline T half_pi() { return boost::math::constants::half_pi<T>(); }
0033 template <typename T>
0034 inline T pi() { return boost::math::constants::pi<T>(); }
0035 template <typename T>
0036 inline T one_and_half_pi() { return T(4.7123889803846898576939650749193); }
0037 template <typename T>
0038 inline T two_pi() { return boost::math::constants::two_pi<T>(); }
0039 template <typename T>
0040 inline T two_and_half_pi() { return T(7.8539816339744830961566084581988); }
0041 
0042 template <typename T>
0043 inline T two_div_pi() { return boost::math::constants::two_div_pi<T>(); }
0044 template <typename T>
0045 inline T half_pi_sqr() { return T(2.4674011002723396547086227499689); }
0046 template <typename T>
0047 inline T pi_sqr() { return boost::math::constants::pi_sqr<T>(); }
0048 
0049 template <typename T>
0050 inline T sixth() { return boost::math::constants::sixth<T>(); }
0051 template <typename T>
0052 inline T third() { return boost::math::constants::third<T>(); }
0053 template <typename T>
0054 inline T two_thirds() { return boost::math::constants::two_thirds<T>(); }
0055 
0056 
0057 } // namespace detail
0058 #endif // DOXYGEN_NO_DETAIL
0059 
0060 
0061 }}} // namespace boost::geometry::projections
0062 #endif // BOOST_GEOMETRY_PROJECTIONS_IMPL_PROJECTS_HPP