side_thomas.hpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // Boost.Geometry
  2. // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
  3. // This file was modified by Oracle on 2014-2017.
  4. // Modifications copyright (c) 2014-2017 Oracle and/or its affiliates.
  5. // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
  6. // Use, modification and distribution is subject to the Boost Software License,
  7. // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  8. // http://www.boost.org/LICENSE_1_0.txt)
  9. #ifndef BOOST_GEOMETRY_STRATEGIES_GEOGRAPHIC_SIDE_THOMAS_HPP
  10. #define BOOST_GEOMETRY_STRATEGIES_GEOGRAPHIC_SIDE_THOMAS_HPP
  11. #include <boost/geometry/strategies/geographic/side.hpp>
  12. namespace boost { namespace geometry
  13. {
  14. namespace strategy { namespace side
  15. {
  16. /*!
  17. \brief Check at which side of a segment a point lies
  18. left of segment (> 0), right of segment (< 0), on segment (0)
  19. \ingroup strategies
  20. \tparam Spheroid Reference model of coordinate system.
  21. \tparam CalculationType \tparam_calculation
  22. */
  23. template
  24. <
  25. typename Spheroid = srs::spheroid<double>,
  26. typename CalculationType = void
  27. >
  28. class thomas
  29. : public side::geographic<strategy::thomas, Spheroid, CalculationType>
  30. {
  31. typedef side::geographic<strategy::thomas, Spheroid, CalculationType> base_t;
  32. public:
  33. thomas()
  34. {}
  35. explicit thomas(Spheroid const& model)
  36. : base_t(model)
  37. {}
  38. };
  39. }} // namespace strategy::side
  40. }} // namespace boost::geometry
  41. #endif // BOOST_GEOMETRY_STRATEGIES_GEOGRAPHIC_SIDE_THOMAS_HPP