Representation of a 3D semi-infinite line. Defines a semi-infinite 3D line by having a start point (Point_t) and direction (Vector_t)
along which the line extends. It hides the start and direction attributes from users for
protecting the dimensionality.
More...
#include <GeoHalfLine.h>
Public Member Functions | |
HalfLine () | |
Default constructor. More... | |
virtual | ~HalfLine () |
Default destructor. More... | |
HalfLine (const double x, const double y, const double z, const double dirx, const double diry, const double dirz) | |
Alternative ctor (1) More... | |
HalfLine (const Point_t &start, const Vector_t &dir) | |
Altenartive ctor (2) More... | |
const Point_t & | Start () const |
Start getter. More... | |
const Vector_t & | Dir () const |
Direction getter. More... | |
void | Start (const double x, const double y, const double z) |
Start setter. More... | |
void | Dir (const double x, const double y, const double z) |
Dir setter. More... | |
void | Start (const TVector3 &pt) |
Start setter. More... | |
void | Dir (const TVector3 &dir) |
Dir setter. More... | |
template<class T , class U > | |
HalfLine (const T &start, const U &dir) | |
Alternative ctor using template (3) More... | |
template<class T > | |
void | Start (const T &pos) |
Start setter template. More... | |
template<class T > | |
void | Dir (const T &dir) |
Dir setter template. More... | |
Protected Member Functions | |
void | Normalize () |
Normalize direction. More... | |
Protected Attributes | |
Point_t | _start |
Beginning of the half line. More... | |
Vector_t | _dir |
Direction of the half line from _start. More... | |
Representation of a 3D semi-infinite line. Defines a semi-infinite 3D line by having a start point (Point_t) and direction (Vector_t)
along which the line extends. It hides the start and direction attributes from users for
protecting the dimensionality.
Definition at line 30 of file GeoHalfLine.h.
geoalgo::HalfLine::HalfLine | ( | ) |
Default constructor.
Definition at line 5 of file GeoHalfLine.cxx.
|
inlinevirtual |
geoalgo::HalfLine::HalfLine | ( | const double | x, |
const double | y, | ||
const double | z, | ||
const double | dirx, | ||
const double | diry, | ||
const double | dirz | ||
) |
Alternative ctor (1)
Definition at line 10 of file GeoHalfLine.cxx.
Altenartive ctor (2)
Definition at line 16 of file GeoHalfLine.cxx.
|
inline |
const Vector_t & geoalgo::HalfLine::Dir | ( | ) | const |
Direction getter.
Definition at line 27 of file GeoHalfLine.cxx.
void geoalgo::HalfLine::Dir | ( | const double | x, |
const double | y, | ||
const double | z | ||
) |
Dir setter.
Definition at line 32 of file GeoHalfLine.cxx.
void geoalgo::HalfLine::Dir | ( | const TVector3 & | dir | ) |
Dir setter.
Definition at line 38 of file GeoHalfLine.cxx.
|
inline |
Dir setter template.
Definition at line 83 of file GeoHalfLine.h.
|
protected |
Normalize direction.
Definition at line 41 of file GeoHalfLine.cxx.
const Point_t & geoalgo::HalfLine::Start | ( | ) | const |
void geoalgo::HalfLine::Start | ( | const double | x, |
const double | y, | ||
const double | z | ||
) |
void geoalgo::HalfLine::Start | ( | const TVector3 & | pt | ) |
|
inline |
Start setter template.
Definition at line 75 of file GeoHalfLine.h.
|
protected |
Direction of the half line from _start.
Definition at line 60 of file GeoHalfLine.h.
|
protected |
Beginning of the half line.
Definition at line 59 of file GeoHalfLine.h.