Simple class definitions for geometry concepts. More...
Classes | |
struct | Point2D |
2D point (x, y) (by default, with double precision) More... | |
struct | Point3D |
3D point (x, y, z) (by default, with double precision) More... | |
class | AreaBase |
Area/volume delimited by points: base/1D implementation. More... | |
class | Area |
Area delimited by two points. More... | |
class | Volume |
Volume delimited by two points. More... | |
struct | Range |
Definition of a range along one dimension. More... | |
struct | Rectangle |
Definition of a rectangle from dimension ranges. More... | |
Functions | |
Dimensionless objects (points) | |
template<typename T > | |
bool | operator== (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
bool | operator!= (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
Point2D< T > | operator+ (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
Point2D< T > | operator* (Point2D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename T > | |
Point2D< T > | operator/ (Point2D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename Stream , typename T > | |
Stream & | operator<< (Stream &&out, Point2D< T > const &p) |
template<typename T > | |
bool | operator== (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
bool | operator!= (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
Point3D< T > | operator+ (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
Point3D< T > | operator* (Point3D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename T > | |
Point3D< T > | operator/ (Point3D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename Stream , typename T > | |
Stream & | operator<< (Stream &&out, Point3D< T > const &p) |
Point-bounded volumes | |
template<typename Stream , typename Point > | |
Stream & | operator<< (Stream &&out, AreaBase< Point > const &area) |
Dimension-bounded volumes | |
template<typename Stream , typename Data > | |
Stream & | operator<< (Stream &&out, Range< Data > const &range) |
Prints the specified range to a stream: "( lower -- upper )". More... | |
template<typename Stream , typename Data > | |
Stream & | operator<< (Stream &&out, Rectangle< Data > const &rect) |
Prints the specified rectangle to a stream: "w=Wrange d=Drange". More... | |
Simple class definitions for geometry concepts.
This namespace provides data structures for "points" and extended structures.
Points are either 2D (Point2D
) or 3D (Point3D
).
The extended structures are offered in two flavours:
bool lar::util::simple_geo::operator!= | ( | Point2D< T > const & | a, |
Point2D< T > const & | b | ||
) |
Definition at line 67 of file SimpleGeo.h.
bool lar::util::simple_geo::operator!= | ( | Point3D< T > const & | a, |
Point3D< T > const & | b | ||
) |
Definition at line 100 of file SimpleGeo.h.
Point2D<T> lar::util::simple_geo::operator* | ( | Point2D< T > const & | p, |
typename Point2D< T >::Data_t | f | ||
) |
Definition at line 73 of file SimpleGeo.h.
Point3D<T> lar::util::simple_geo::operator* | ( | Point3D< T > const & | p, |
typename Point2D< T >::Data_t | f | ||
) |
Definition at line 106 of file SimpleGeo.h.
Point2D<T> lar::util::simple_geo::operator+ | ( | Point2D< T > const & | a, |
Point2D< T > const & | b | ||
) |
Definition at line 70 of file SimpleGeo.h.
Point3D<T> lar::util::simple_geo::operator+ | ( | Point3D< T > const & | a, |
Point3D< T > const & | b | ||
) |
Definition at line 103 of file SimpleGeo.h.
Point2D<T> lar::util::simple_geo::operator/ | ( | Point2D< T > const & | p, |
typename Point2D< T >::Data_t | f | ||
) |
Definition at line 76 of file SimpleGeo.h.
Point3D<T> lar::util::simple_geo::operator/ | ( | Point3D< T > const & | p, |
typename Point2D< T >::Data_t | f | ||
) |
Definition at line 109 of file SimpleGeo.h.
Stream& lar::util::simple_geo::operator<< | ( | Stream && | out, |
Point2D< T > const & | p | ||
) |
Definition at line 79 of file SimpleGeo.h.
Stream& lar::util::simple_geo::operator<< | ( | Stream && | out, |
Point3D< T > const & | p | ||
) |
Definition at line 112 of file SimpleGeo.h.
Stream& lar::util::simple_geo::operator<< | ( | Stream && | out, |
AreaBase< Point > const & | area | ||
) |
Definition at line 255 of file SimpleGeo.h.
Stream & lar::util::simple_geo::operator<< | ( | Stream && | out, |
Range< Data > const & | range | ||
) |
Prints the specified range to a stream: "( lower -- upper )".
Definition at line 507 of file SimpleGeo.h.
Stream & lar::util::simple_geo::operator<< | ( | Stream && | out, |
Rectangle< Data > const & | rect | ||
) |
Prints the specified rectangle to a stream: "w=Wrange d=Drange".
Definition at line 537 of file SimpleGeo.h.
bool lar::util::simple_geo::operator== | ( | Point2D< T > const & | a, |
Point2D< T > const & | b | ||
) |
Definition at line 64 of file SimpleGeo.h.
bool lar::util::simple_geo::operator== | ( | Point3D< T > const & | a, |
Point3D< T > const & | b | ||
) |
Definition at line 97 of file SimpleGeo.h.