Code_TYMPAN  4.4.0
Industrial site acoustic simulation
cgal_bridge.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) <2012-2024> <EDF-DTG> <FRANCE>
3  * This file is part of Code_TYMPAN (R).
4  * Code_TYMPAN (R) is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  * Code_TYMPAN (R) is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  * You should have received a copy of the GNU General Public License along
13  * with Code_TYMPAN (R). If not, see <https://www.gnu.org/licenses/>.
14  */
15 
24 #ifndef TYMPAN__CGAL_BRIDGE_HPP__INCLUDED
25 #define TYMPAN__CGAL_BRIDGE_HPP__INCLUDED
26 
27 #include <deque>
28 #include <memory>
29 
30 #include "Tympan/core/exceptions.h"
33 
34 // Forward declarations
35 #include "Tympan/core/smartptr.h"
36 class TYPolygon;
37 class TYTopographie;
38 class TYSol;
39 class TYTerrain;
40 class TYCourbeNiveau;
43 
44 #ifndef BOOST_NOEXCEPT
45  #define BOOST_NOEXCEPT
46 #endif
47 
48 namespace tympan
49 {
50 
52 {
53 public:
55 
65  virtual void exportMesh(std::deque<OPoint3D>& points, std::deque<OTriangle>& triangles) const = 0;
66 
67 }; // class ITYPolygonTriangulator
68 
69 std::unique_ptr<ITYPolygonTriangulator> make_polygon_triangulator(const TYPolygon& poly);
70 
71 } // namespace tympan
72 
73 #endif // TYMPAN__CGAL_BRIDGE_HPP__INCLUDED
All base classes related to 3D manipulation.
SmartPtr< TYSol > LPTYSol
Smart pointer sur TYSol.
Definition: cgal_bridge.h:40
Definition: TYSol.h:25
virtual void exportMesh(std::deque< OPoint3D > &points, std::deque< OTriangle > &triangles) const =0
Export the surface as a triangular mesh.
Utilities to handle exceptions and to pretty-print value.
std::unique_ptr< ITYPolygonTriangulator > make_polygon_triangulator(const TYPolygon &poly)
Definition: cgal_bridge.cpp:96