|
||||
File indexing completed on 2025-01-18 09:35:28
0001 // Boost.Geometry 0002 0003 // Copyright (c) 2018-2019 Barend Gehrels, Amsterdam, the Netherlands. 0004 0005 // Use, modification and distribution is subject to the Boost Software License, 0006 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 0007 // http://www.boost.org/LICENSE_1_0.txt) 0008 0009 #ifndef BOOST_GEOMETRY_GEOMETRIES_INFINITE_LINE_HPP 0010 #define BOOST_GEOMETRY_GEOMETRIES_INFINITE_LINE_HPP 0011 0012 0013 namespace boost { namespace geometry 0014 { 0015 0016 namespace model 0017 { 0018 0019 //-------------------------------------------------------------------------- 0020 // Structure containing an infinite line. 0021 // It is written using "General Form", a*x + b*y + c == 0 0022 // Might be conceptized later. Therefore operations are implemented outside 0023 // the structure itself. 0024 template <typename Type = double> 0025 struct infinite_line 0026 { 0027 using type = Type; 0028 0029 infinite_line() 0030 : a(0) 0031 , b(0) 0032 , c(0) 0033 , normalized(false) 0034 {} 0035 0036 // Horizontal: a == 0, for example y-3=0, y==3 0037 // Vertical: b == 0, for example x-2=0, x==2 0038 // Through origin: c == 0 0039 Type a; 0040 Type b; 0041 Type c; 0042 bool normalized; 0043 }; 0044 0045 0046 } // namespace model 0047 0048 0049 }} // namespace boost::geometry 0050 0051 0052 #endif // BOOST_GEOMETRY_GEOMETRIES_INFINITE_LINE_HPP
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |