Direction set covering (part of) circle.
More...
#include <JOmega2D.hh>
|
| JOmega2D () |
| Default constructor.
|
|
| JOmega2D (const double grid) |
| Constructor.
|
|
| JOmega2D (const JAngle2D &dir, const double phiMax, const double grid) |
| Constructor.
|
|
void | configure (const JAngle2D &dir, const double phiMax, const double grid) |
| Configure direction set.
|
|
int | find (const JAngle2D &dir) const |
| Get index of direction closest to given direction.
|
|
Direction set covering (part of) circle.
Definition at line 60 of file JOmega2D.hh.
◆ JOmega2D() [1/3]
JGEOMETRY2D::JOmega2D::JOmega2D |
( |
| ) |
|
|
inline |
Default constructor.
Definition at line 67 of file JOmega2D.hh.
67 :
68 JOmega2D_t()
69 {}
◆ JOmega2D() [2/3]
JGEOMETRY2D::JOmega2D::JOmega2D |
( |
const double | grid | ) |
|
|
inline |
Constructor.
- Parameters
-
grid | angular spacing [rad] |
Definition at line 77 of file JOmega2D.hh.
77 :
78 JOmega2D_t()
79 {
81 }
void configure(const JAngle2D &dir, const double phiMax, const double grid)
Configure direction set.
◆ JOmega2D() [3/3]
JGEOMETRY2D::JOmega2D::JOmega2D |
( |
const JAngle2D & | dir, |
|
|
const double | phiMax, |
|
|
const double | grid ) |
|
inline |
Constructor.
- Parameters
-
dir | principal direction |
phiMax | maximal angle [rad] |
grid | angular spacing [rad] |
Definition at line 92 of file JOmega2D.hh.
94 :
95 JOmega2D_t()
96 {
98 }
◆ configure()
void JGEOMETRY2D::JOmega2D::configure |
( |
const JAngle2D & | dir, |
|
|
const double | phiMax, |
|
|
const double | grid ) |
|
inline |
Configure direction set.
- Parameters
-
dir | principal direction |
phiMax | maximal angle [rad] |
grid | angular spacing [rad] |
Definition at line 108 of file JOmega2D.hh.
111 {
112 clear();
113
114
115
116 double phi_min = 0.0;
117 double phi_max = phiMax;
118
119 if (phi_max < 0.0) phi_max = 0.0;
120 if (phi_max > PI) phi_max = PI;
121
122 if (phi_max > phi_min) {
123
124 const double rad = phi_max - phi_min;
125 const double bin = rad / floor(rad/grid + 0.5);
126
127 for (double phi = phi_min; phi < phi_max + 0.5*bin; phi += bin) {
128
129 if (phi < 0.5*bin) {
130 push_back(dir);
131 } else if (PI - phi < 0.5*bin) {
132 push_back(dir + PI);
133 } else {
134 push_back(dir + phi);
135 push_back(dir - phi);
136 }
137 }
138 }
139 }
◆ find()
int JGEOMETRY2D::JOmega2D_t::find |
( |
const JAngle2D & | dir | ) |
const |
|
inlineinherited |
Get index of direction closest to given direction.
- Parameters
-
- Returns
- index (-1 if error)
Definition at line 37 of file JOmega2D.hh.
38 {
39 double dot = -1.0;
40 int index = -1;
41
42 for (const_iterator i = this->begin(); i != this->end(); ++i) {
43
44 const double x = dir.getDot(*i);
45
46 if (x > dot) {
48 index = std::distance(this->begin(), i);
49 }
50 }
51
52 return index;
53 }
The documentation for this class was generated from the following file: