-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmeshbuilder.h
44 lines (39 loc) · 1.16 KB
/
meshbuilder.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef MESHBUILDER_H
#define MESHBUILDER_H
#include "mesh.h"
#include <QString>
#include "vector2d.h"
#include "polyanglehauteur.h"
#include "batiment/batiment.h"
/**
* @brief The MeshBuilder class, contains methods to create and load meshes
*/
class MeshBuilder
{
public:
/**
* Empty MeshBuilder constructor
*/
MeshBuilder();
/**
* Loads a mesh for a file
* @param[in] nom The file location to load from
* @return The constructed mesh
*/
Mesh loadMesh(const QString& nom) const;
/**
* Saves the mesh to a file
* @param[in] nom The file location to save in
* @param[in] mesh The mesh to save
*/
void saveMesh(const std::string &nom, const Mesh &mesh) const;
Mesh generationPolyanglesRelies(const QVector<PolyangleHauteur> & polyangles) const;
Mesh generationCone(const PolyangleHauteur &poly, const float hauteurCone);
Mesh generationCone(const Vector3D ¢re, const float hauteurCone, const int definition, const float rayon);
Mesh generationEtage(const Batiment* etage) const;
/**
* Destructor of MeshBuilder, empty.
*/
~MeshBuilder();
};
#endif // MESHBUILDER_H