LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
A base for a plane in space. More...
#include "Decomposer.h"
Public Types | |
using | Vector_t = Vector |
Type for the vector in space. More... | |
Public Member Functions | |
PlaneBase (Vector_t const &main, Vector_t const &secondary) | |
Constructor: assigns the axes. More... | |
Vector_t const & | MainDir () const |
Returns the main axis direction. More... | |
Vector_t const & | SecondaryDir () const |
Returns the secondary axis direction. More... | |
Vector_t const & | NormalDir () const |
Returns the axis normal to the plane. More... | |
void | SetMainDir (Vector_t const &dir) |
Change the main direction of the projection base. More... | |
void | SetSecondaryDir (Vector_t const &dir) |
Change the secondary direction of the projection base. More... | |
Static Public Member Functions | |
static Vector_t | PastorizeUnitVector (Vector_t dir) |
Normalizes and rounds a direction vector. More... | |
Static Public Attributes | |
static constexpr double | RoundingTol = 1e-4 |
Rounding threshold for vectors. More... | |
Private Member Functions | |
Vector_t | ComputeNormal () const |
Computes the normal to the plane. More... | |
void | ResetNormal () |
Reset normal to the plane. More... | |
Private Attributes | |
Vector_t | fMain |
Main axis on the plane. More... | |
Vector_t | fSecondary |
Secondary axis on the plane. More... | |
Vector_t | fNormal |
Axis normal to the plane. More... | |
A base for a plane in space.
The base contains the two axes, a "main" one ( ) and a "secondary" one ( ). It also defines a normal ( ) to the plane so that the base is positive defined (( ).
Definition at line 38 of file Decomposer.h.
using geo::PlaneBase< Vector >::Vector_t = Vector |
Type for the vector in space.
Definition at line 40 of file Decomposer.h.
|
inline |
Constructor: assigns the axes.
Definition at line 46 of file Decomposer.h.
|
inlineprivate |
Computes the normal to the plane.
Definition at line 87 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::ResetNormal().
|
inline |
Returns the main axis direction.
Definition at line 53 of file Decomposer.h.
Referenced by geo::PlaneDecomposer< Direction_t, Position_t, Projection_t >::ComposeVector(), geo::PlaneBase< geo::Vector_t >::ComputeNormal(), and geo::PlaneDecomposer< Direction_t, Position_t, Projection_t >::VectorMainComponent().
|
inline |
Returns the axis normal to the plane.
Definition at line 59 of file Decomposer.h.
Referenced by geo::Decomposer< Direction_t, Position_t, Projection_t >::ComposeVector(), and geo::Decomposer< Direction_t, Position_t, Projection_t >::VectorNormalComponent().
|
inlinestatic |
Normalizes and rounds a direction vector.
Definition at line 76 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::ComputeNormal().
|
inlineprivate |
Reset normal to the plane.
Definition at line 90 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::SetMainDir(), and geo::PlaneBase< geo::Vector_t >::SetSecondaryDir().
|
inline |
Returns the secondary axis direction.
Definition at line 56 of file Decomposer.h.
Referenced by geo::PlaneDecomposer< Direction_t, Position_t, Projection_t >::ComposeVector(), geo::PlaneBase< geo::Vector_t >::ComputeNormal(), and geo::PlaneDecomposer< Direction_t, Position_t, Projection_t >::VectorSecondaryComponent().
|
inline |
|
inline |
Change the secondary direction of the projection base.
Definition at line 69 of file Decomposer.h.
|
private |
Main axis on the plane.
Definition at line 82 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::MainDir(), and geo::PlaneBase< geo::Vector_t >::SetMainDir().
|
private |
Axis normal to the plane.
Definition at line 84 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::NormalDir().
|
private |
Secondary axis on the plane.
Definition at line 83 of file Decomposer.h.
Referenced by geo::PlaneBase< geo::Vector_t >::SecondaryDir(), and geo::PlaneBase< geo::Vector_t >::SetSecondaryDir().
|
static |
Rounding threshold for vectors.
Definition at line 43 of file Decomposer.h.