Code_TYMPAN  4.4.0
Industrial site acoustic simulation
TYFaceSelector.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) <2012> <EDF-R&D> <FRANCE>
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation; either version 2 of the License, or
6  * (at your option) any later version.
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10  * See the GNU General Public License for more details.
11  * You should have received a copy of the GNU General Public License along
12  * with this program; if not, write to the Free Software Foundation, Inc.,
13  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
14  */
15 
16 #ifndef __TYFACESELECTOR_9613__
17 #define __TYFACESELECTOR_9613__
18 
20 #include "TYSolverDefines.h"
21 
22 class TYSolver;
23 class TYTrajet;
24 
29 {
30 public:
31  TYFaceSelector(TYSolver& solver);
32  virtual ~TYFaceSelector();
33 
40  virtual void selectFaces(std::deque<TYSIntersection>& tabIntersect, const OSegment3D& rayon,
41  const string& sourceVolumeId);
42 
43 protected:
45 
46 private:
47  bool buildPlans(TYSPlan* plan, const OSegment3D& rayon);
48  bool CalculSegmentCoupe(const TYStructSurfIntersect& FaceCourante, TYSIntersection& Intersect,
49  OPoint3D& pt1, OPoint3D& pt2, OPoint3D& pt3, const int& indice) const;
50  void reorder_intersect(std::deque<TYSIntersection>& tabIntersect);
51 };
52 
53 #endif // __TYFACESELECTOR_9613__
The 3D point class.
Definition: 3d.h:487
Class to define a segment.
Definition: 3d.h:1089
Interface of TYFaceSelector classes.
Building class of the faces list.
virtual ~TYFaceSelector()
bool buildPlans(TYSPlan *plan, const OSegment3D &rayon)
bool CalculSegmentCoupe(const TYStructSurfIntersect &FaceCourante, TYSIntersection &Intersect, OPoint3D &pt1, OPoint3D &pt2, OPoint3D &pt3, const int &indice) const
TYSolver & _solver
Reference to the solver.
virtual void selectFaces(std::deque< TYSIntersection > &tabIntersect, const OSegment3D &rayon, const string &sourceVolumeId)
Build the array of intersections.
TYFaceSelector(TYSolver &solver)
void reorder_intersect(std::deque< TYSIntersection > &tabIntersect)
put infrastructure faces on top
9613 Solver
Definition: TYSolver.h:38
This class TYTrajet (journey) links a couple Source-Receptor and a collection of paths,...
Definition: TYTrajet.h:35
Data structure for intersections.
Structure to describe a plan defined with 3 points.
Describe surface intersections.