36 bool dessus =
true, lateral =
false;
61 size_t nbFaces = tabIntersect.size();
63 short indiceIntersect = dessus ? 0 : 1;
67 ptsLeft.push_back(rayon.
_ptA);
71 ptsRight.push_back(rayon.
_ptA);
77 for (
size_t i = 0; i < nbFaces; i++)
79 if (tabIntersect[i].bIntersect[indiceIntersect])
98 for (
int j = 1; j < (nNbrePointsTrajetGauche - 1);
102 pt.
_x = dPointTemp[0];
103 pt.
_y = dPointTemp[1];
104 pt.
_z = dPointTemp[2];
105 ptsLeft.push_back(pt);
112 for (
int j = 1; j < (nNbrePointsTrajetDroite - 1);
116 pt.
_x = dPointTemp[0];
117 pt.
_y = dPointTemp[1];
118 pt.
_z = dPointTemp[2];
119 ptsRight.push_back(pt);
std::vector< OPoint3D > TabPoint3D
double _y
y coordinate of OCoord3D
double _z
z coordinate of OCoord3D
double _x
x coordinate of OCoord3D
Class to define a segment.
OPoint3D _ptA
Point A of the segment.
OPoint3D _ptB
Point B of the segment.
virtual void computePath(const std::deque< TYSIntersection > &tabIntersect, const TYTrajet &trajet, TabPoint3D &ptsTop, TabPoint3D &ptsLeft, TabPoint3D &ptsRight)
Compute a path between a source and a receptor. The receptor is not included in the path.
bool _bCalcTrajetHorizontaux
Boolean to compute or not the horizontal trajectories.
virtual ~TYAcousticPathFinder()
Destructor.
virtual void init()
Initialize the class parameters.
bool computeParcoursLateraux(const std::deque< TYSIntersection > &tabIntersect, const OSegment3D &rayon, const bool &dessus, TabPoint3D &ptsLeft, TabPoint3D &ptsRight) const
TYAcousticPathFinder(TYSolver &solver)
Constructor.
Class for computing path used by TYAcousticPathFinder.
void AjouterSegmentSR(double *ptA, double *ptB)
Add points A (source) and B (receptor)
void AjouterSegmentCoupe(double *ptA, double *ptB, bool isInfra, bool isEcran)
Add a segment defined by 2 points.
bool Traitement()
Build the left and right geometric paths.
void PointTrajetDroite(int i, double *pt)
Return the ith point of the right geometric path.
int NombrePointsTrajetDroite()
Return the points number of the left geometric path.
void PointTrajetGauche(int i, double *pt)
Return the ith point of the left geometric path.
int NombrePointsTrajetGauche()
Return the points number of the right geometric path.
This class TYTrajet (journey) links a couple Source-Receptor and a collection of paths,...
void getPtSetPtRfromOSeg3D(OSegment3D &seg) const
static LPSolverConfiguration get()
Get the configuration.
This file provides class for solver configuration.
Data structure for intersections.
bool isInfra
Flag to define if is a infrastructure face.
bool isEcran
Flag to define if is a screen face.