LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Some simple functions to represent geometry entities. More...
#include <algorithm>
#include <array>
#include <stdexcept>
Go to the source code of this file.
Classes | |
struct | lar::util::simple_geo::Point2D< Data > |
2D point (x, y) (by default, with double precision) More... | |
struct | lar::util::simple_geo::Point3D< Data > |
3D point (x, y, z) (by default, with double precision) More... | |
class | lar::util::simple_geo::AreaBase< Point > |
Area/volume delimited by points: base/1D implementation. More... | |
class | lar::util::simple_geo::AreaBase< Point >::NullIntersection |
Exception thrown when result of intersection is null. More... | |
class | lar::util::simple_geo::Area< Point > |
Area delimited by two points. More... | |
class | lar::util::simple_geo::Volume< Point > |
Volume delimited by two points. More... | |
struct | lar::util::simple_geo::Range< Data > |
Definition of a range along one dimension. More... | |
struct | lar::util::simple_geo::Rectangle< Data > |
Definition of a rectangle from dimension ranges. More... | |
Namespaces | |
lar | |
LArSoft-specific namespace. | |
lar::util | |
LArSoft utility namespace. | |
lar::util::simple_geo | |
Simple class definitions for geometry concepts. | |
Functions | |
Dimensionless objects (points) | |
template<typename T > | |
bool | lar::util::simple_geo::operator== (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
bool | lar::util::simple_geo::operator!= (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
Point2D< T > | lar::util::simple_geo::operator+ (Point2D< T > const &a, Point2D< T > const &b) |
template<typename T > | |
Point2D< T > | lar::util::simple_geo::operator* (Point2D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename T > | |
Point2D< T > | lar::util::simple_geo::operator/ (Point2D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename Stream , typename T > | |
Stream & | lar::util::simple_geo::operator<< (Stream &&out, Point2D< T > const &p) |
template<typename T > | |
bool | lar::util::simple_geo::operator== (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
bool | lar::util::simple_geo::operator!= (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
Point3D< T > | lar::util::simple_geo::operator+ (Point3D< T > const &a, Point3D< T > const &b) |
template<typename T > | |
Point3D< T > | lar::util::simple_geo::operator* (Point3D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename T > | |
Point3D< T > | lar::util::simple_geo::operator/ (Point3D< T > const &p, typename Point2D< T >::Data_t f) |
template<typename Stream , typename T > | |
Stream & | lar::util::simple_geo::operator<< (Stream &&out, Point3D< T > const &p) |
Point-bounded volumes | |
template<typename Stream , typename Point > | |
Stream & | lar::util::simple_geo::operator<< (Stream &&out, AreaBase< Point > const &area) |
Dimension-bounded volumes | |
template<typename Stream , typename Data > | |
Stream & | lar::util::simple_geo::operator<< (Stream &&out, Range< Data > const &range) |
Prints the specified range to a stream: "( lower -- upper )". More... | |
template<typename Stream , typename Data > | |
Stream & | lar::util::simple_geo::operator<< (Stream &&out, Rectangle< Data > const &rect) |
Prints the specified rectangle to a stream: "w=Wrange d=Drange". More... | |
Some simple functions to represent geometry entities.
This library is simple and header-only.
Definition in file SimpleGeo.h.