This commit is contained in:
DylanVsn 2020-03-10 15:50:28 +01:00
parent 5f01e7fa5b
commit 7cec43ef1b
8 changed files with 1076 additions and 27 deletions

View File

@ -340,6 +340,7 @@ DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \ /usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \ /usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \ /usr/lib/qt/mkspecs/features/spec_post.prf \
.qmake.stash \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/toolchain.prf \ /usr/lib/qt/mkspecs/features/toolchain.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \ /usr/lib/qt/mkspecs/features/default_pre.prf \
@ -653,6 +654,7 @@ Makefile: starterLight.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/
/usr/lib/qt/mkspecs/features/qt_config.prf \ /usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \ /usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \ /usr/lib/qt/mkspecs/features/spec_post.prf \
.qmake.stash \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/toolchain.prf \ /usr/lib/qt/mkspecs/features/toolchain.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \ /usr/lib/qt/mkspecs/features/default_pre.prf \
@ -953,6 +955,7 @@ Makefile: starterLight.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/
/usr/lib/qt/mkspecs/features/qt_config.prf: /usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf: /usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf: /usr/lib/qt/mkspecs/features/spec_post.prf:
.qmake.stash:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf: /usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/toolchain.prf: /usr/lib/qt/mkspecs/features/toolchain.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf: /usr/lib/qt/mkspecs/features/default_pre.prf:
@ -1292,7 +1295,8 @@ mainwindow.o: mainwindow.cpp mainwindow.h \
../OpenMesh/inc/OpenMesh/Core/Mesh/PolyMeshT.cc \ ../OpenMesh/inc/OpenMesh/Core/Mesh/PolyMeshT.cc \
../OpenMesh/inc/OpenMesh/Core/Geometry/LoopSchemeMaskT.hh \ ../OpenMesh/inc/OpenMesh/Core/Geometry/LoopSchemeMaskT.hh \
../OpenMesh/inc/OpenMesh/Core/Mesh/TriMeshT.cc \ ../OpenMesh/inc/OpenMesh/Core/Mesh/TriMeshT.cc \
ui_mainwindow.h ui_mainwindow.h \
meshviewerwidget.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o mainwindow.o mainwindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o mainwindow.o mainwindow.cpp
meshviewerwidget.o: meshviewerwidget.cpp meshviewerwidget.h \ meshviewerwidget.o: meshviewerwidget.cpp meshviewerwidget.h \

View File

@ -2,6 +2,7 @@
#include "ui_mainwindow.h" #include "ui_mainwindow.h"
#include <vector> #include <vector>
#include <set> #include <set>
#include <iostream>
using namespace std; using namespace std;
/* **** début de la partie à compléter **** */ /* **** début de la partie à compléter **** */
@ -102,6 +103,7 @@ void MainWindow::showPath(MyMesh* _mesh, int v1, int v2)
{ {
// on réinitialise l'affichage // on réinitialise l'affichage
resetAllColorsAndThickness(_mesh); resetAllColorsAndThickness(_mesh);
if ((v1 >= 0 && v1 < _mesh->n_vertices() - 1) && (v2 >= 0 && v2 < _mesh->n_vertices() - 1)) {
// point de départ et point d'arrivée en vert et en gros // point de départ et point d'arrivée en vert et en gros
_mesh->set_color(_mesh->vertex_handle(v1), MyMesh::Color(0, 255, 0)); _mesh->set_color(_mesh->vertex_handle(v1), MyMesh::Color(0, 255, 0));
@ -110,7 +112,11 @@ void MainWindow::showPath(MyMesh* _mesh, int v1, int v2)
_mesh->data(_mesh->vertex_handle(v2)).thickness = 12; _mesh->data(_mesh->vertex_handle(v2)).thickness = 12;
/* **** à compléter ! **** */ /* **** à compléter ! **** */
for (const int &edge_id : meinDijkstra(_mesh, v1, v2)) {
_mesh->set_color(_mesh->edge_handle(edge_id), MyMesh::Color(0, 255, 0));
_mesh->data(_mesh->edge_handle(edge_id)).thickness = 12;
}
}
// on affiche le nouveau maillage // on affiche le nouveau maillage
displayMesh(_mesh); displayMesh(_mesh);
} }
@ -127,38 +133,35 @@ int minimal_new(vector<ulong> dist, set<int> visited) {
return mini_id; return mini_id;
} }
vector<EdgeHandle> meinDijkstra(MyMesh *_mesh, int v1, int v2) { vector<int> meinDijkstra(MyMesh *_mesh, int v1, int v2) {
set<int> visited_nodes_id = {}; set<int> visited_nodes_id = {};
const int nb = _mesh->n_faces(); const int nb = _mesh->n_faces();
vector<ulong> dist_min (nb, ULONG_MAX); vector<ulong> dist_min (nb, ULONG_MAX);
vector<int> prec_hv_id (nb, -1); vector<HalfedgeHandle> prec_hf (nb);
dist_min[v1] = 0; dist_min[v1] = 0;
int current; int current;
VertexHandle current_node; VertexHandle current_node;
uint distance; uint distance;
VertexHandle following; int following;
while (visited_nodes_id.size() != nb) { while (visited_nodes_id.size() != nb) {
current = minimal_new(dist_min, visited_nodes_id); current = minimal_new(dist_min, visited_nodes_id);
visited_nodes_id.insert(current); visited_nodes_id.insert(current);
if (current == v2) break; if (current == v2) break;
current_node = _mesh->vertex_handle(current); current_node = _mesh->vertex_handle(current);
for (auto voh_it = _mesh->voh_iter(current_node); voh_it.is_valid(); ++voh_it) { for (auto voh_it = _mesh->voh_iter(current_node); voh_it.is_valid(); ++voh_it) {
MyMesh::Halfedge cur_hf = _mesh->halfedge(*voh_it); distance = dist_min[current] + 1;
distance = dist_min[current] + _mesh->valence(cur_hf.edge); following = _mesh->to_vertex_handle(*voh_it).idx();
following = cur_hf.outgoingvertex;
if (distance < dist_min[following]) { if (distance < dist_min[following]) {
dist_min[successeur] = distance; dist_min[following] = distance;
prec_hv_id[successeur] = *voh_it->idx; prec_hf[following] = _mesh->opposite_halfedge_handle(*voh_it);
} }
} }
} }
vector<EdgeHandle> path; vector<int> path;
if (prec_hv_id[v2] != -1) {
current = v2; current = v2;
while (predecesseur[current] != -1) { while (current != v1) {
path.push_back(predecesseur[current].edge); path.push_back(_mesh->edge_handle(prec_hf[current]).idx());
current = path.end()->incoming_node; current = _mesh->to_vertex_handle(prec_hf[current]).idx();
}
} }
return path; return path;
} }

View File

@ -5,7 +5,7 @@
#include <QMainWindow> #include <QMainWindow>
#include <OpenMesh/Core/IO/MeshIO.hh> #include <OpenMesh/Core/IO/MeshIO.hh>
#include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh> #include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh>
#include <vector>
namespace Ui { namespace Ui {
class MainWindow; class MainWindow;
} }
@ -75,5 +75,6 @@ private:
Ui::MainWindow *ui; Ui::MainWindow *ui;
}; };
std::vector<int> meinDijkstra(MyMesh *_mesh, int v1, int v2);
#endif // MAINWINDOW_H #endif // MAINWINDOW_H

View File

@ -7,7 +7,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>632</width> <width>632</width>
<height>408</height> <height>431</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
@ -445,7 +445,11 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QSpinBox" name="spinBox_v2_chemin"/> <widget class="QSpinBox" name="spinBox_v2_chemin">
<property name="maximum">
<number>999999999</number>
</property>
</widget>
</item> </item>
</layout> </layout>
</widget> </widget>
@ -487,7 +491,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>632</width> <width>632</width>
<height>22</height> <height>30</height>
</rect> </rect>
</property> </property>
</widget> </widget>

164
moc_mainwindow.cpp Normal file
View File

@ -0,0 +1,164 @@
/****************************************************************************
** Meta object code from reading C++ file 'mainwindow.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.14.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include <memory>
#include "mainwindow.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'mainwindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.14.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_MainWindow_t {
QByteArrayData data[12];
char stringdata0[337];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
{
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
QT_MOC_LITERAL(1, 11, 32), // "on_pushButton_chargement_clicked"
QT_MOC_LITERAL(2, 44, 0), // ""
QT_MOC_LITERAL(3, 45, 33), // "on_pushButton_vertexMoins_cli..."
QT_MOC_LITERAL(4, 79, 32), // "on_pushButton_vertexPlus_clicked"
QT_MOC_LITERAL(5, 112, 31), // "on_pushButton_edgeMoins_clicked"
QT_MOC_LITERAL(6, 144, 30), // "on_pushButton_edgePlus_clicked"
QT_MOC_LITERAL(7, 175, 31), // "on_pushButton_faceMoins_clicked"
QT_MOC_LITERAL(8, 207, 30), // "on_pushButton_facePlus_clicked"
QT_MOC_LITERAL(9, 238, 36), // "on_pushButton_afficherChemin_..."
QT_MOC_LITERAL(10, 275, 31), // "on_pushButton_voisinage_clicked"
QT_MOC_LITERAL(11, 307, 29) // "on_pushButton_bordure_clicked"
},
"MainWindow\0on_pushButton_chargement_clicked\0"
"\0on_pushButton_vertexMoins_clicked\0"
"on_pushButton_vertexPlus_clicked\0"
"on_pushButton_edgeMoins_clicked\0"
"on_pushButton_edgePlus_clicked\0"
"on_pushButton_faceMoins_clicked\0"
"on_pushButton_facePlus_clicked\0"
"on_pushButton_afficherChemin_clicked\0"
"on_pushButton_voisinage_clicked\0"
"on_pushButton_bordure_clicked"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MainWindow[] = {
// content:
8, // revision
0, // classname
0, 0, // classinfo
10, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 64, 2, 0x08 /* Private */,
3, 0, 65, 2, 0x08 /* Private */,
4, 0, 66, 2, 0x08 /* Private */,
5, 0, 67, 2, 0x08 /* Private */,
6, 0, 68, 2, 0x08 /* Private */,
7, 0, 69, 2, 0x08 /* Private */,
8, 0, 70, 2, 0x08 /* Private */,
9, 0, 71, 2, 0x08 /* Private */,
10, 0, 72, 2, 0x08 /* Private */,
11, 0, 73, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
auto *_t = static_cast<MainWindow *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: _t->on_pushButton_chargement_clicked(); break;
case 1: _t->on_pushButton_vertexMoins_clicked(); break;
case 2: _t->on_pushButton_vertexPlus_clicked(); break;
case 3: _t->on_pushButton_edgeMoins_clicked(); break;
case 4: _t->on_pushButton_edgePlus_clicked(); break;
case 5: _t->on_pushButton_faceMoins_clicked(); break;
case 6: _t->on_pushButton_facePlus_clicked(); break;
case 7: _t->on_pushButton_afficherChemin_clicked(); break;
case 8: _t->on_pushButton_voisinage_clicked(); break;
case 9: _t->on_pushButton_bordure_clicked(); break;
default: ;
}
}
Q_UNUSED(_a);
}
QT_INIT_METAOBJECT const QMetaObject MainWindow::staticMetaObject = { {
QMetaObject::SuperData::link<QMainWindow::staticMetaObject>(),
qt_meta_stringdata_MainWindow.data,
qt_meta_data_MainWindow,
qt_static_metacall,
nullptr,
nullptr
} };
const QMetaObject *MainWindow::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MainWindow::qt_metacast(const char *_clname)
{
if (!_clname) return nullptr;
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata0))
return static_cast<void*>(this);
return QMainWindow::qt_metacast(_clname);
}
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QMainWindow::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 10)
qt_static_metacall(this, _c, _id, _a);
_id -= 10;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 10)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 10;
}
return _id;
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE

95
moc_meshviewerwidget.cpp Normal file
View File

@ -0,0 +1,95 @@
/****************************************************************************
** Meta object code from reading C++ file 'meshviewerwidget.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.14.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include <memory>
#include "meshviewerwidget.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'meshviewerwidget.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.14.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_MeshViewerWidget_t {
QByteArrayData data[1];
char stringdata0[17];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MeshViewerWidget_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MeshViewerWidget_t qt_meta_stringdata_MeshViewerWidget = {
{
QT_MOC_LITERAL(0, 0, 16) // "MeshViewerWidget"
},
"MeshViewerWidget"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MeshViewerWidget[] = {
// content:
8, // revision
0, // classname
0, 0, // classinfo
0, 0, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
0 // eod
};
void MeshViewerWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
Q_UNUSED(_o);
Q_UNUSED(_id);
Q_UNUSED(_c);
Q_UNUSED(_a);
}
QT_INIT_METAOBJECT const QMetaObject MeshViewerWidget::staticMetaObject = { {
QMetaObject::SuperData::link<QGLWidget::staticMetaObject>(),
qt_meta_stringdata_MeshViewerWidget.data,
qt_meta_data_MeshViewerWidget,
qt_static_metacall,
nullptr,
nullptr
} };
const QMetaObject *MeshViewerWidget::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MeshViewerWidget::qt_metacast(const char *_clname)
{
if (!_clname) return nullptr;
if (!strcmp(_clname, qt_meta_stringdata_MeshViewerWidget.stringdata0))
return static_cast<void*>(this);
return QGLWidget::qt_metacast(_clname);
}
int MeshViewerWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QGLWidget::qt_metacall(_c, _id, _a);
return _id;
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE

389
moc_predefs.h Normal file
View File

@ -0,0 +1,389 @@
#define __SSP_STRONG__ 3
#define __DBL_MIN_EXP__ (-1021)
#define __FLT32X_MAX_EXP__ 1024
#define __cpp_attributes 200809
#define __UINT_LEAST16_MAX__ 0xffff
#define __ATOMIC_ACQUIRE 2
#define __FLT128_MAX_10_EXP__ 4932
#define __FLT_MIN__ 1.17549435082228750796873653722224568e-38F
#define __GCC_IEC_559_COMPLEX 2
#define __cpp_aggregate_nsdmi 201304
#define __UINT_LEAST8_TYPE__ unsigned char
#define __SIZEOF_FLOAT80__ 16
#define __INTMAX_C(c) c ## L
#define __CHAR_BIT__ 8
#define __UINT8_MAX__ 0xff
#define __WINT_MAX__ 0xffffffffU
#define __FLT32_MIN_EXP__ (-125)
#define __cpp_static_assert 200410
#define __ORDER_LITTLE_ENDIAN__ 1234
#define __SIZE_MAX__ 0xffffffffffffffffUL
#define __WCHAR_MAX__ 0x7fffffff
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
#define __DBL_DENORM_MIN__ double(4.94065645841246544176568792868221372e-324L)
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
#define __GCC_IEC_559 2
#define __FLT32X_DECIMAL_DIG__ 17
#define __FLT_EVAL_METHOD__ 0
#define __unix__ 1
#define __cpp_binary_literals 201304
#define __FLT64_DECIMAL_DIG__ 17
#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
#define __x86_64 1
#define __cpp_variadic_templates 200704
#define __UINT_FAST64_MAX__ 0xffffffffffffffffUL
#define __SIG_ATOMIC_TYPE__ int
#define __DBL_MIN_10_EXP__ (-307)
#define __FINITE_MATH_ONLY__ 0
#define __cpp_variable_templates 201304
#define __GNUC_PATCHLEVEL__ 1
#define __FLT32_HAS_DENORM__ 1
#define __UINT_FAST8_MAX__ 0xff
#define __cpp_rvalue_reference 200610
#define __has_include(STR) __has_include__(STR)
#define __DEC64_MAX_EXP__ 385
#define __INT8_C(c) c
#define __INT_LEAST8_WIDTH__ 8
#define __UINT_LEAST64_MAX__ 0xffffffffffffffffUL
#define __SHRT_MAX__ 0x7fff
#define __LDBL_MAX__ 1.18973149535723176502126385303097021e+4932L
#define __FLT64X_MAX_10_EXP__ 4932
#define __UINT_LEAST8_MAX__ 0xff
#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
#define __FLT128_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966F128
#define __UINTMAX_TYPE__ long unsigned int
#define __linux 1
#define __DEC32_EPSILON__ 1E-6DF
#define __FLT_EVAL_METHOD_TS_18661_3__ 0
#define __OPTIMIZE__ 1
#define __unix 1
#define __UINT32_MAX__ 0xffffffffU
#define __GXX_EXPERIMENTAL_CXX0X__ 1
#define __LDBL_MAX_EXP__ 16384
#define __FLT128_MIN_EXP__ (-16381)
#define __WINT_MIN__ 0U
#define __linux__ 1
#define __FLT128_MIN_10_EXP__ (-4931)
#define __INT_LEAST16_WIDTH__ 16
#define __SCHAR_MAX__ 0x7f
#define __FLT128_MANT_DIG__ 113
#define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1)
#define __INT64_C(c) c ## L
#define __DBL_DIG__ 15
#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
#define __FLT64X_MANT_DIG__ 64
#define __SIZEOF_INT__ 4
#define __SIZEOF_POINTER__ 8
#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
#define __USER_LABEL_PREFIX__
#define __FLT64X_EPSILON__ 1.08420217248550443400745280086994171e-19F64x
#define __STDC_HOSTED__ 1
#define __LDBL_HAS_INFINITY__ 1
#define __FLT32_DIG__ 6
#define __FLT_EPSILON__ 1.19209289550781250000000000000000000e-7F
#define __GXX_WEAK__ 1
#define __SHRT_WIDTH__ 16
#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
#define __DEC32_MAX__ 9.999999E96DF
#define __cpp_threadsafe_static_init 200806
#define __FLT64X_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951F64x
#define __FLT32X_HAS_INFINITY__ 1
#define __INT32_MAX__ 0x7fffffff
#define __INT_WIDTH__ 32
#define __SIZEOF_LONG__ 8
#define __STDC_IEC_559__ 1
#define __STDC_ISO_10646__ 201706L
#define __UINT16_C(c) c
#define __PTRDIFF_WIDTH__ 64
#define __DECIMAL_DIG__ 21
#define __FLT64_EPSILON__ 2.22044604925031308084726333618164062e-16F64
#define __gnu_linux__ 1
#define __INTMAX_WIDTH__ 64
#define __FLT64_MIN_EXP__ (-1021)
#define __has_include_next(STR) __has_include_next__(STR)
#define __FLT64X_MIN_10_EXP__ (-4931)
#define __LDBL_HAS_QUIET_NAN__ 1
#define __FLT64_MANT_DIG__ 53
#define __GNUC__ 9
#define __GXX_RTTI 1
#define __pie__ 2
#define __MMX__ 1
#define __cpp_delegating_constructors 200604
#define __FLT_HAS_DENORM__ 1
#define __SIZEOF_LONG_DOUBLE__ 16
#define __BIGGEST_ALIGNMENT__ 16
#define __STDC_UTF_16__ 1
#define __FLT64_MAX_10_EXP__ 308
#define __FLT32_HAS_INFINITY__ 1
#define __DBL_MAX__ double(1.79769313486231570814527423731704357e+308L)
#define __cpp_raw_strings 200710
#define __INT_FAST32_MAX__ 0x7fffffffffffffffL
#define __DBL_HAS_INFINITY__ 1
#define __HAVE_SPECULATION_SAFE_VALUE 1
#define __DEC32_MIN_EXP__ (-94)
#define __INTPTR_WIDTH__ 64
#define __FLT32X_HAS_DENORM__ 1
#define __INT_FAST16_TYPE__ long int
#define __LDBL_HAS_DENORM__ 1
#define __cplusplus 201402L
#define __cpp_ref_qualifiers 200710
#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
#define __INT_LEAST32_MAX__ 0x7fffffff
#define __DEC32_MIN__ 1E-95DF
#define __DEPRECATED 1
#define __cpp_rvalue_references 200610
#define __DBL_MAX_EXP__ 1024
#define __WCHAR_WIDTH__ 32
#define __FLT32_MAX__ 3.40282346638528859811704183484516925e+38F32
#define __DEC128_EPSILON__ 1E-33DL
#define __SSE2_MATH__ 1
#define __ATOMIC_HLE_RELEASE 131072
#define __PTRDIFF_MAX__ 0x7fffffffffffffffL
#define __amd64 1
#define __ATOMIC_HLE_ACQUIRE 65536
#define __FLT32_HAS_QUIET_NAN__ 1
#define __GNUG__ 9
#define __LONG_LONG_MAX__ 0x7fffffffffffffffLL
#define __SIZEOF_SIZE_T__ 8
#define __cpp_nsdmi 200809
#define __FLT64X_MIN_EXP__ (-16381)
#define __SIZEOF_WINT_T__ 4
#define __LONG_LONG_WIDTH__ 64
#define __cpp_initializer_lists 200806
#define __FLT32_MAX_EXP__ 128
#define __cpp_hex_float 201603
#define __GCC_HAVE_DWARF2_CFI_ASM 1
#define __GXX_ABI_VERSION 1013
#define __FLT128_HAS_INFINITY__ 1
#define __FLT_MIN_EXP__ (-125)
#define __cpp_lambdas 200907
#define __FLT64X_HAS_QUIET_NAN__ 1
#define __INT_FAST64_TYPE__ long int
#define __FLT64_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F64
#define __DBL_MIN__ double(2.22507385850720138309023271733240406e-308L)
#define __PIE__ 2
#define __LP64__ 1
#define __FLT32X_EPSILON__ 2.22044604925031308084726333618164062e-16F32x
#define __DECIMAL_BID_FORMAT__ 1
#define __FLT64_MIN_10_EXP__ (-307)
#define __FLT64X_DECIMAL_DIG__ 21
#define __DEC128_MIN__ 1E-6143DL
#define __REGISTER_PREFIX__
#define __UINT16_MAX__ 0xffff
#define __FLT32_MIN__ 1.17549435082228750796873653722224568e-38F32
#define __UINT8_TYPE__ unsigned char
#define __FLT_MANT_DIG__ 24
#define __LDBL_DECIMAL_DIG__ 21
#define __VERSION__ "9.2.1 20200130"
#define __UINT64_C(c) c ## UL
#define __cpp_unicode_characters 200704
#define _STDC_PREDEF_H 1
#define __cpp_decltype_auto 201304
#define __GCC_ATOMIC_INT_LOCK_FREE 2
#define __FLT128_MAX_EXP__ 16384
#define __FLT32_MANT_DIG__ 24
#define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__
#define __STDC_IEC_559_COMPLEX__ 1
#define __FLT128_HAS_DENORM__ 1
#define __FLT128_DIG__ 33
#define __SCHAR_WIDTH__ 8
#define __INT32_C(c) c
#define __DEC64_EPSILON__ 1E-15DD
#define __ORDER_PDP_ENDIAN__ 3412
#define __DEC128_MIN_EXP__ (-6142)
#define __FLT32_MAX_10_EXP__ 38
#define __INT_FAST32_TYPE__ long int
#define __UINT_LEAST16_TYPE__ short unsigned int
#define __FLT64X_HAS_INFINITY__ 1
#define unix 1
#define __DBL_HAS_DENORM__ 1
#define __INT16_MAX__ 0x7fff
#define __cpp_rtti 199711
#define __SIZE_TYPE__ long unsigned int
#define __UINT64_MAX__ 0xffffffffffffffffUL
#define __FLT64X_DIG__ 18
#define __INT8_TYPE__ signed char
#define __cpp_digit_separators 201309
#define __ELF__ 1
#define __GCC_ASM_FLAG_OUTPUTS__ 1
#define __FLT_RADIX__ 2
#define __INT_LEAST16_TYPE__ short int
#define __LDBL_EPSILON__ 1.08420217248550443400745280086994171e-19L
#define __UINTMAX_C(c) c ## UL
#define __GLIBCXX_BITSIZE_INT_N_0 128
#define __k8 1
#define __SIG_ATOMIC_MAX__ 0x7fffffff
#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
#define __SIZEOF_PTRDIFF_T__ 8
#define __FLT32X_MANT_DIG__ 53
#define __x86_64__ 1
#define __FLT32X_MIN_EXP__ (-1021)
#define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
#define __INT_FAST16_MAX__ 0x7fffffffffffffffL
#define __FLT64_DIG__ 15
#define __UINT_FAST32_MAX__ 0xffffffffffffffffUL
#define __UINT_LEAST64_TYPE__ long unsigned int
#define __FLT_HAS_QUIET_NAN__ 1
#define __FLT_MAX_10_EXP__ 38
#define __LONG_MAX__ 0x7fffffffffffffffL
#define __FLT64X_HAS_DENORM__ 1
#define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
#define __FLT_HAS_INFINITY__ 1
#define __cpp_unicode_literals 200710
#define __UINT_FAST16_TYPE__ long unsigned int
#define __DEC64_MAX__ 9.999999999999999E384DD
#define __INT_FAST32_WIDTH__ 64
#define __CHAR16_TYPE__ short unsigned int
#define __PRAGMA_REDEFINE_EXTNAME 1
#define __SIZE_WIDTH__ 64
#define __SEG_FS 1
#define __INT_LEAST16_MAX__ 0x7fff
#define __DEC64_MANT_DIG__ 16
#define __INT64_MAX__ 0x7fffffffffffffffL
#define __UINT_LEAST32_MAX__ 0xffffffffU
#define __SEG_GS 1
#define __FLT32_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F32
#define __GCC_ATOMIC_LONG_LOCK_FREE 2
#define __SIG_ATOMIC_WIDTH__ 32
#define __INT_LEAST64_TYPE__ long int
#define __INT16_TYPE__ short int
#define __INT_LEAST8_TYPE__ signed char
#define __DEC32_MAX_EXP__ 97
#define __INT_FAST8_MAX__ 0x7f
#define __FLT128_MAX__ 1.18973149535723176508575932662800702e+4932F128
#define __INTPTR_MAX__ 0x7fffffffffffffffL
#define __cpp_sized_deallocation 201309
#define linux 1
#define __cpp_range_based_for 200907
#define __FLT64_HAS_QUIET_NAN__ 1
#define __FLT32_MIN_10_EXP__ (-37)
#define __SSE2__ 1
#define __EXCEPTIONS 1
#define __LDBL_MANT_DIG__ 64
#define __DBL_HAS_QUIET_NAN__ 1
#define __FLT64_HAS_INFINITY__ 1
#define __FLT64X_MAX__ 1.18973149535723176502126385303097021e+4932F64x
#define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
#define __code_model_small__ 1
#define __cpp_return_type_deduction 201304
#define __k8__ 1
#define __INTPTR_TYPE__ long int
#define __UINT16_TYPE__ short unsigned int
#define __WCHAR_TYPE__ int
#define __SIZEOF_FLOAT__ 4
#define __pic__ 2
#define __UINTPTR_MAX__ 0xffffffffffffffffUL
#define __INT_FAST64_WIDTH__ 64
#define __DEC64_MIN_EXP__ (-382)
#define __cpp_decltype 200707
#define __FLT32_DECIMAL_DIG__ 9
#define __INT_FAST64_MAX__ 0x7fffffffffffffffL
#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
#define __FLT_DIG__ 6
#define __FLT64X_MAX_EXP__ 16384
#define __UINT_FAST64_TYPE__ long unsigned int
#define __INT_MAX__ 0x7fffffff
#define __amd64__ 1
#define __INT64_TYPE__ long int
#define __FLT_MAX_EXP__ 128
#define __ORDER_BIG_ENDIAN__ 4321
#define __DBL_MANT_DIG__ 53
#define __cpp_inheriting_constructors 201511
#define __SIZEOF_FLOAT128__ 16
#define __INT_LEAST64_MAX__ 0x7fffffffffffffffL
#define __DEC64_MIN__ 1E-383DD
#define __WINT_TYPE__ unsigned int
#define __UINT_LEAST32_TYPE__ unsigned int
#define __SIZEOF_SHORT__ 2
#define __SSE__ 1
#define __LDBL_MIN_EXP__ (-16381)
#define __FLT64_MAX__ 1.79769313486231570814527423731704357e+308F64
#define __WINT_WIDTH__ 32
#define __INT_LEAST8_MAX__ 0x7f
#define __FLT32X_MAX_10_EXP__ 308
#define __SIZEOF_INT128__ 16
#define __LDBL_MAX_10_EXP__ 4932
#define __ATOMIC_RELAXED 0
#define __DBL_EPSILON__ double(2.22044604925031308084726333618164062e-16L)
#define __FLT128_MIN__ 3.36210314311209350626267781732175260e-4932F128
#define _LP64 1
#define __UINT8_C(c) c
#define __FLT64_MAX_EXP__ 1024
#define __INT_LEAST32_TYPE__ int
#define __SIZEOF_WCHAR_T__ 4
#define __FLT128_HAS_QUIET_NAN__ 1
#define __INT_FAST8_TYPE__ signed char
#define __FLT64X_MIN__ 3.36210314311209350626267781732175260e-4932F64x
#define __GNUC_STDC_INLINE__ 1
#define __FLT64_HAS_DENORM__ 1
#define __FLT32_EPSILON__ 1.19209289550781250000000000000000000e-7F32
#define __DBL_DECIMAL_DIG__ 17
#define __STDC_UTF_32__ 1
#define __INT_FAST8_WIDTH__ 8
#define __FXSR__ 1
#define __DEC_EVAL_METHOD__ 2
#define __FLT32X_MAX__ 1.79769313486231570814527423731704357e+308F32x
#define __cpp_runtime_arrays 198712
#define __UINT64_TYPE__ long unsigned int
#define __UINT32_C(c) c ## U
#define __INTMAX_MAX__ 0x7fffffffffffffffL
#define __cpp_alias_templates 200704
#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
#define __FLT_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F
#define __INT8_MAX__ 0x7f
#define __LONG_WIDTH__ 64
#define __PIC__ 2
#define __UINT_FAST32_TYPE__ long unsigned int
#define __CHAR32_TYPE__ unsigned int
#define __FLT_MAX__ 3.40282346638528859811704183484516925e+38F
#define __cpp_constexpr 201304
#define __INT32_TYPE__ int
#define __SIZEOF_DOUBLE__ 8
#define __cpp_exceptions 199711
#define __FLT_MIN_10_EXP__ (-37)
#define __FLT64_MIN__ 2.22507385850720138309023271733240406e-308F64
#define __INT_LEAST32_WIDTH__ 32
#define __INTMAX_TYPE__ long int
#define __DEC128_MAX_EXP__ 6145
#define __FLT32X_HAS_QUIET_NAN__ 1
#define __ATOMIC_CONSUME 1
#define __GNUC_MINOR__ 2
#define __GLIBCXX_TYPE_INT_N_0 __int128
#define __INT_FAST16_WIDTH__ 64
#define __UINTMAX_MAX__ 0xffffffffffffffffUL
#define __DEC32_MANT_DIG__ 7
#define __FLT32X_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F32x
#define __DBL_MAX_10_EXP__ 308
#define __LDBL_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951L
#define __INT16_C(c) c
#define __cpp_generic_lambdas 201304
#define __STDC__ 1
#define __FLT32X_DIG__ 15
#define __PTRDIFF_TYPE__ long int
#define __ATOMIC_SEQ_CST 5
#define __UINT32_TYPE__ unsigned int
#define __FLT32X_MIN_10_EXP__ (-307)
#define __UINTPTR_TYPE__ long unsigned int
#define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
#define __DEC128_MANT_DIG__ 34
#define __LDBL_MIN_10_EXP__ (-4931)
#define __FLT128_EPSILON__ 1.92592994438723585305597794258492732e-34F128
#define __SSE_MATH__ 1
#define __SIZEOF_LONG_LONG__ 8
#define __cpp_user_defined_literals 200809
#define __FLT128_DECIMAL_DIG__ 36
#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
#define __FLT32X_MIN__ 2.22507385850720138309023271733240406e-308F32x
#define __LDBL_DIG__ 18
#define __FLT_DECIMAL_DIG__ 9
#define __UINT_FAST16_MAX__ 0xffffffffffffffffUL
#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
#define __INT_LEAST64_WIDTH__ 64
#define __UINT_FAST8_TYPE__ unsigned char
#define _GNU_SOURCE 1
#define __cpp_init_captures 201304
#define __ATOMIC_ACQ_REL 4
#define __ATOMIC_RELEASE 3

389
ui_mainwindow.h Normal file
View File

@ -0,0 +1,389 @@
/********************************************************************************
** Form generated from reading UI file 'mainwindow.ui'
**
** Created by: Qt User Interface Compiler version 5.14.1
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINWINDOW_H
#define UI_MAINWINDOW_H
#include <QtCore/QVariant>
#include <QtWidgets/QApplication>
#include <QtWidgets/QFrame>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QLabel>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QSpacerItem>
#include <QtWidgets/QSpinBox>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QToolBar>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include <meshviewerwidget.h>
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QHBoxLayout *horizontalLayout;
QWidget *widget_2;
QVBoxLayout *verticalLayout;
QPushButton *pushButton_chargement;
QFrame *frame;
QVBoxLayout *verticalLayout_2;
QLabel *label;
QWidget *widget_4;
QHBoxLayout *horizontalLayout_2;
QLabel *label_4;
QPushButton *pushButton_vertexMoins;
QLabel *labelVertex;
QPushButton *pushButton_vertexPlus;
QWidget *widget_3;
QHBoxLayout *horizontalLayout_3;
QLabel *label_5;
QPushButton *pushButton_edgeMoins;
QLabel *labelEdge;
QPushButton *pushButton_edgePlus;
QWidget *widget;
QHBoxLayout *horizontalLayout_4;
QLabel *label_6;
QPushButton *pushButton_faceMoins;
QLabel *labelFace;
QPushButton *pushButton_facePlus;
QPushButton *pushButton_voisinage;
QFrame *frame_3;
QHBoxLayout *horizontalLayout_6;
QPushButton *pushButton_bordure;
QFrame *frame_2;
QVBoxLayout *verticalLayout_3;
QWidget *widget_5;
QHBoxLayout *horizontalLayout_5;
QLabel *label_v1_chemin;
QSpinBox *spinBox_v1_chemin;
QLabel *label_v2_chemin;
QSpinBox *spinBox_v2_chemin;
QPushButton *pushButton_afficherChemin;
QSpacerItem *verticalSpacer;
MeshViewerWidget *displayWidget;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
MainWindow->resize(632, 431);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QString::fromUtf8("centralWidget"));
horizontalLayout = new QHBoxLayout(centralWidget);
horizontalLayout->setSpacing(6);
horizontalLayout->setContentsMargins(11, 11, 11, 11);
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
widget_2 = new QWidget(centralWidget);
widget_2->setObjectName(QString::fromUtf8("widget_2"));
QSizePolicy sizePolicy(QSizePolicy::Maximum, QSizePolicy::Preferred);
sizePolicy.setHorizontalStretch(150);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(widget_2->sizePolicy().hasHeightForWidth());
widget_2->setSizePolicy(sizePolicy);
widget_2->setMinimumSize(QSize(150, 0));
verticalLayout = new QVBoxLayout(widget_2);
verticalLayout->setSpacing(4);
verticalLayout->setContentsMargins(11, 11, 11, 11);
verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
verticalLayout->setContentsMargins(3, 3, 3, 3);
pushButton_chargement = new QPushButton(widget_2);
pushButton_chargement->setObjectName(QString::fromUtf8("pushButton_chargement"));
pushButton_chargement->setMinimumSize(QSize(200, 0));
verticalLayout->addWidget(pushButton_chargement);
frame = new QFrame(widget_2);
frame->setObjectName(QString::fromUtf8("frame"));
frame->setFrameShape(QFrame::StyledPanel);
frame->setFrameShadow(QFrame::Raised);
verticalLayout_2 = new QVBoxLayout(frame);
verticalLayout_2->setSpacing(1);
verticalLayout_2->setContentsMargins(11, 11, 11, 11);
verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2"));
verticalLayout_2->setContentsMargins(2, 2, 2, 2);
label = new QLabel(frame);
label->setObjectName(QString::fromUtf8("label"));
verticalLayout_2->addWidget(label);
widget_4 = new QWidget(frame);
widget_4->setObjectName(QString::fromUtf8("widget_4"));
horizontalLayout_2 = new QHBoxLayout(widget_4);
horizontalLayout_2->setSpacing(1);
horizontalLayout_2->setContentsMargins(11, 11, 11, 11);
horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2"));
horizontalLayout_2->setContentsMargins(2, 2, 2, 2);
label_4 = new QLabel(widget_4);
label_4->setObjectName(QString::fromUtf8("label_4"));
QSizePolicy sizePolicy1(QSizePolicy::Maximum, QSizePolicy::Preferred);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
label_4->setSizePolicy(sizePolicy1);
horizontalLayout_2->addWidget(label_4);
pushButton_vertexMoins = new QPushButton(widget_4);
pushButton_vertexMoins->setObjectName(QString::fromUtf8("pushButton_vertexMoins"));
QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Fixed);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(pushButton_vertexMoins->sizePolicy().hasHeightForWidth());
pushButton_vertexMoins->setSizePolicy(sizePolicy2);
horizontalLayout_2->addWidget(pushButton_vertexMoins);
labelVertex = new QLabel(widget_4);
labelVertex->setObjectName(QString::fromUtf8("labelVertex"));
QSizePolicy sizePolicy3(QSizePolicy::Preferred, QSizePolicy::Preferred);
sizePolicy3.setHorizontalStretch(0);
sizePolicy3.setVerticalStretch(0);
sizePolicy3.setHeightForWidth(labelVertex->sizePolicy().hasHeightForWidth());
labelVertex->setSizePolicy(sizePolicy3);
labelVertex->setAlignment(Qt::AlignCenter);
horizontalLayout_2->addWidget(labelVertex);
pushButton_vertexPlus = new QPushButton(widget_4);
pushButton_vertexPlus->setObjectName(QString::fromUtf8("pushButton_vertexPlus"));
sizePolicy2.setHeightForWidth(pushButton_vertexPlus->sizePolicy().hasHeightForWidth());
pushButton_vertexPlus->setSizePolicy(sizePolicy2);
horizontalLayout_2->addWidget(pushButton_vertexPlus);
verticalLayout_2->addWidget(widget_4);
widget_3 = new QWidget(frame);
widget_3->setObjectName(QString::fromUtf8("widget_3"));
sizePolicy3.setHeightForWidth(widget_3->sizePolicy().hasHeightForWidth());
widget_3->setSizePolicy(sizePolicy3);
horizontalLayout_3 = new QHBoxLayout(widget_3);
horizontalLayout_3->setSpacing(1);
horizontalLayout_3->setContentsMargins(11, 11, 11, 11);
horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3"));
horizontalLayout_3->setContentsMargins(2, 2, 2, 2);
label_5 = new QLabel(widget_3);
label_5->setObjectName(QString::fromUtf8("label_5"));
sizePolicy1.setHeightForWidth(label_5->sizePolicy().hasHeightForWidth());
label_5->setSizePolicy(sizePolicy1);
horizontalLayout_3->addWidget(label_5);
pushButton_edgeMoins = new QPushButton(widget_3);
pushButton_edgeMoins->setObjectName(QString::fromUtf8("pushButton_edgeMoins"));
sizePolicy2.setHeightForWidth(pushButton_edgeMoins->sizePolicy().hasHeightForWidth());
pushButton_edgeMoins->setSizePolicy(sizePolicy2);
horizontalLayout_3->addWidget(pushButton_edgeMoins);
labelEdge = new QLabel(widget_3);
labelEdge->setObjectName(QString::fromUtf8("labelEdge"));
sizePolicy3.setHeightForWidth(labelEdge->sizePolicy().hasHeightForWidth());
labelEdge->setSizePolicy(sizePolicy3);
labelEdge->setAlignment(Qt::AlignCenter);
horizontalLayout_3->addWidget(labelEdge);
pushButton_edgePlus = new QPushButton(widget_3);
pushButton_edgePlus->setObjectName(QString::fromUtf8("pushButton_edgePlus"));
sizePolicy2.setHeightForWidth(pushButton_edgePlus->sizePolicy().hasHeightForWidth());
pushButton_edgePlus->setSizePolicy(sizePolicy2);
pushButton_edgePlus->setMinimumSize(QSize(10, 0));
horizontalLayout_3->addWidget(pushButton_edgePlus);
verticalLayout_2->addWidget(widget_3);
widget = new QWidget(frame);
widget->setObjectName(QString::fromUtf8("widget"));
horizontalLayout_4 = new QHBoxLayout(widget);
horizontalLayout_4->setSpacing(1);
horizontalLayout_4->setContentsMargins(11, 11, 11, 11);
horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4"));
horizontalLayout_4->setContentsMargins(2, 2, 2, 2);
label_6 = new QLabel(widget);
label_6->setObjectName(QString::fromUtf8("label_6"));
sizePolicy1.setHeightForWidth(label_6->sizePolicy().hasHeightForWidth());
label_6->setSizePolicy(sizePolicy1);
horizontalLayout_4->addWidget(label_6);
pushButton_faceMoins = new QPushButton(widget);
pushButton_faceMoins->setObjectName(QString::fromUtf8("pushButton_faceMoins"));
sizePolicy2.setHeightForWidth(pushButton_faceMoins->sizePolicy().hasHeightForWidth());
pushButton_faceMoins->setSizePolicy(sizePolicy2);
horizontalLayout_4->addWidget(pushButton_faceMoins);
labelFace = new QLabel(widget);
labelFace->setObjectName(QString::fromUtf8("labelFace"));
sizePolicy3.setHeightForWidth(labelFace->sizePolicy().hasHeightForWidth());
labelFace->setSizePolicy(sizePolicy3);
labelFace->setAlignment(Qt::AlignCenter);
horizontalLayout_4->addWidget(labelFace);
pushButton_facePlus = new QPushButton(widget);
pushButton_facePlus->setObjectName(QString::fromUtf8("pushButton_facePlus"));
sizePolicy2.setHeightForWidth(pushButton_facePlus->sizePolicy().hasHeightForWidth());
pushButton_facePlus->setSizePolicy(sizePolicy2);
horizontalLayout_4->addWidget(pushButton_facePlus);
verticalLayout_2->addWidget(widget);
pushButton_voisinage = new QPushButton(frame);
pushButton_voisinage->setObjectName(QString::fromUtf8("pushButton_voisinage"));
verticalLayout_2->addWidget(pushButton_voisinage);
verticalLayout->addWidget(frame);
frame_3 = new QFrame(widget_2);
frame_3->setObjectName(QString::fromUtf8("frame_3"));
frame_3->setFrameShape(QFrame::StyledPanel);
frame_3->setFrameShadow(QFrame::Raised);
horizontalLayout_6 = new QHBoxLayout(frame_3);
horizontalLayout_6->setSpacing(1);
horizontalLayout_6->setContentsMargins(11, 11, 11, 11);
horizontalLayout_6->setObjectName(QString::fromUtf8("horizontalLayout_6"));
horizontalLayout_6->setContentsMargins(1, 1, 1, 1);
pushButton_bordure = new QPushButton(frame_3);
pushButton_bordure->setObjectName(QString::fromUtf8("pushButton_bordure"));
horizontalLayout_6->addWidget(pushButton_bordure);
verticalLayout->addWidget(frame_3);
frame_2 = new QFrame(widget_2);
frame_2->setObjectName(QString::fromUtf8("frame_2"));
frame_2->setFrameShape(QFrame::StyledPanel);
frame_2->setFrameShadow(QFrame::Raised);
verticalLayout_3 = new QVBoxLayout(frame_2);
verticalLayout_3->setSpacing(2);
verticalLayout_3->setContentsMargins(11, 11, 11, 11);
verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3"));
verticalLayout_3->setContentsMargins(1, 2, 2, 2);
widget_5 = new QWidget(frame_2);
widget_5->setObjectName(QString::fromUtf8("widget_5"));
horizontalLayout_5 = new QHBoxLayout(widget_5);
horizontalLayout_5->setSpacing(1);
horizontalLayout_5->setContentsMargins(11, 11, 11, 11);
horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5"));
horizontalLayout_5->setContentsMargins(1, 1, 1, 1);
label_v1_chemin = new QLabel(widget_5);
label_v1_chemin->setObjectName(QString::fromUtf8("label_v1_chemin"));
sizePolicy1.setHeightForWidth(label_v1_chemin->sizePolicy().hasHeightForWidth());
label_v1_chemin->setSizePolicy(sizePolicy1);
horizontalLayout_5->addWidget(label_v1_chemin);
spinBox_v1_chemin = new QSpinBox(widget_5);
spinBox_v1_chemin->setObjectName(QString::fromUtf8("spinBox_v1_chemin"));
horizontalLayout_5->addWidget(spinBox_v1_chemin);
label_v2_chemin = new QLabel(widget_5);
label_v2_chemin->setObjectName(QString::fromUtf8("label_v2_chemin"));
sizePolicy1.setHeightForWidth(label_v2_chemin->sizePolicy().hasHeightForWidth());
label_v2_chemin->setSizePolicy(sizePolicy1);
horizontalLayout_5->addWidget(label_v2_chemin);
spinBox_v2_chemin = new QSpinBox(widget_5);
spinBox_v2_chemin->setObjectName(QString::fromUtf8("spinBox_v2_chemin"));
spinBox_v2_chemin->setMaximum(999999999);
horizontalLayout_5->addWidget(spinBox_v2_chemin);
verticalLayout_3->addWidget(widget_5);
pushButton_afficherChemin = new QPushButton(frame_2);
pushButton_afficherChemin->setObjectName(QString::fromUtf8("pushButton_afficherChemin"));
verticalLayout_3->addWidget(pushButton_afficherChemin);
verticalLayout->addWidget(frame_2);
verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
verticalLayout->addItem(verticalSpacer);
horizontalLayout->addWidget(widget_2);
displayWidget = new MeshViewerWidget(centralWidget);
displayWidget->setObjectName(QString::fromUtf8("displayWidget"));
horizontalLayout->addWidget(displayWidget);
MainWindow->setCentralWidget(centralWidget);
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QString::fromUtf8("menuBar"));
menuBar->setGeometry(QRect(0, 0, 632, 30));
MainWindow->setMenuBar(menuBar);
mainToolBar = new QToolBar(MainWindow);
mainToolBar->setObjectName(QString::fromUtf8("mainToolBar"));
MainWindow->addToolBar(Qt::TopToolBarArea, mainToolBar);
statusBar = new QStatusBar(MainWindow);
statusBar->setObjectName(QString::fromUtf8("statusBar"));
MainWindow->setStatusBar(statusBar);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QCoreApplication::translate("MainWindow", "MainWindow", nullptr));
pushButton_chargement->setText(QCoreApplication::translate("MainWindow", "Charger OBJ", nullptr));
label->setText(QCoreApplication::translate("MainWindow", "S\303\251lections courantes :", nullptr));
label_4->setText(QCoreApplication::translate("MainWindow", "v : ", nullptr));
pushButton_vertexMoins->setText(QCoreApplication::translate("MainWindow", "-", nullptr));
labelVertex->setText(QCoreApplication::translate("MainWindow", "-1", nullptr));
pushButton_vertexPlus->setText(QCoreApplication::translate("MainWindow", "+", nullptr));
label_5->setText(QCoreApplication::translate("MainWindow", "e : ", nullptr));
pushButton_edgeMoins->setText(QCoreApplication::translate("MainWindow", "-", nullptr));
labelEdge->setText(QCoreApplication::translate("MainWindow", "-1", nullptr));
pushButton_edgePlus->setText(QCoreApplication::translate("MainWindow", "+", nullptr));
label_6->setText(QCoreApplication::translate("MainWindow", "f : ", nullptr));
pushButton_faceMoins->setText(QCoreApplication::translate("MainWindow", "-", nullptr));
labelFace->setText(QCoreApplication::translate("MainWindow", "-1", nullptr));
pushButton_facePlus->setText(QCoreApplication::translate("MainWindow", "+", nullptr));
pushButton_voisinage->setText(QCoreApplication::translate("MainWindow", "Passer en mode voisinage", nullptr));
pushButton_bordure->setText(QCoreApplication::translate("MainWindow", "Afficher la bordure", nullptr));
label_v1_chemin->setText(QCoreApplication::translate("MainWindow", " v1 : ", nullptr));
label_v2_chemin->setText(QCoreApplication::translate("MainWindow", " v2 : ", nullptr));
pushButton_afficherChemin->setText(QCoreApplication::translate("MainWindow", "Afficher le chemin", nullptr));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H