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: