LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Representation of a 3D infinite line. Defines an infinite 3D line by having 2 points which completely determine the line along which the line extends. It hides the point attributes from users for
protecting the dimensionality.
More...
#include "GeoLine.h"
Public Member Functions | |
Line () | |
Default constructor. More... | |
virtual | ~Line () |
Default destructor. More... | |
Line (const double x1, const double y1, const double z1, const double x2, const double y2, const double z2) | |
Alternative ctor (1) More... | |
Line (const Point_t &pt1, const Point_t &pt2) | |
Altenartive ctor (2) More... | |
const Point_t & | Pt1 () const |
Start getter. More... | |
const Point_t & | Pt2 () const |
Direction getter. More... | |
void | Pt1 (const double x, const double y, const double z) |
Pt1 setter. More... | |
void | Pt2 (const double x, const double y, const double z) |
Pt2 setter. More... | |
template<class T , class U > | |
Line (const T &pt1, const U &pt2) | |
Alternative ctor using template (3) More... | |
template<class T > | |
void | Pt1 (const T &pt1) |
Pt1 setter template. More... | |
template<class T > | |
void | Pt2 (const T &pt2) |
Pt2 setter template. More... | |
Protected Member Functions | |
void | check_and_raise (const Point_t &p1, const Point_t &p2) const |
Compatibility check. More... | |
Protected Attributes | |
Point_t | _pt1 |
First point denoting infinite line. More... | |
Vector_t | _pt2 |
Second point denoting infinite line. More... | |
Representation of a 3D infinite line. Defines an infinite 3D line by having 2 points which completely determine the line along which the line extends. It hides the point attributes from users for
protecting the dimensionality.
geoalgo::Line::Line | ( | ) |
|
inlinevirtual |
geoalgo::Line::Line | ( | const double | x1, |
const double | y1, | ||
const double | z1, | ||
const double | x2, | ||
const double | y2, | ||
const double | z2 | ||
) |
Alternative ctor (1)
Definition at line 8 of file GeoLine.cxx.
References _pt1, _pt2, and check_and_raise().
Altenartive ctor (2)
Definition at line 19 of file GeoLine.cxx.
References check_and_raise().
|
inline |
Compatibility check.
Definition at line 49 of file GeoLine.cxx.
Referenced by geoalgo::DirectedLine::DirectedLine(), Line(), Pt1(), Pt2(), and ~Line().
const Point_t & geoalgo::Line::Pt1 | ( | ) | const |
Start getter.
Definition at line 24 of file GeoLine.cxx.
References _pt1.
Referenced by geoalgo::GeoAlgo::_ClosestPt_(), geoalgo::GeoAlgo::_commonOrigin_(), geoalgo::GeoAlgo::_SqDist_(), geoalgo::GeoAlgo::ClosestPt(), geoalgo::GeoAlgo::commonOrigin(), geoalgo::GeoAlgo::SqDist(), and ~Line().
void geoalgo::Line::Pt1 | ( | const double | x, |
const double | y, | ||
const double | z | ||
) |
Pt1 setter.
Definition at line 33 of file GeoLine.cxx.
References _pt1, _pt2, check_and_raise(), x, y, and z.
|
inline |
Pt1 setter template.
Definition at line 77 of file GeoLine.h.
References check_and_raise().
const Point_t & geoalgo::Line::Pt2 | ( | ) | const |
Direction getter.
Definition at line 28 of file GeoLine.cxx.
References _pt2.
Referenced by geoalgo::GeoAlgo::_ClosestPt_(), geoalgo::GeoAlgo::_commonOrigin_(), geoalgo::GeoAlgo::_SqDist_(), and ~Line().
void geoalgo::Line::Pt2 | ( | const double | x, |
const double | y, | ||
const double | z | ||
) |
Pt2 setter.
Definition at line 41 of file GeoLine.cxx.
References _pt1, _pt2, check_and_raise(), x, y, and z.
|
inline |
Pt2 setter template.
Definition at line 85 of file GeoLine.h.
References check_and_raise().
|
protected |
First point denoting infinite line.
Definition at line 63 of file GeoLine.h.
Referenced by geoalgo::Cylinder::Contain(), geoalgo::DirectedLine::Dir(), geoalgo::DirectedLine::DirectedLine(), Line(), Pt1(), and Pt2().
|
protected |
Second point denoting infinite line.
Definition at line 64 of file GeoLine.h.
Referenced by geoalgo::Cylinder::Contain(), geoalgo::DirectedLine::Dir(), geoalgo::DirectedLine::DirectedLine(), Line(), Pt1(), and Pt2().