diff --git a/Makefile b/Makefile index 71cdd6f..6492f2e 100644 --- a/Makefile +++ b/Makefile @@ -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/linux-g++/qmake.conf \ /usr/lib/qt/mkspecs/features/spec_post.prf \ + .qmake.stash \ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \ /usr/lib/qt/mkspecs/features/toolchain.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/linux-g++/qmake.conf \ /usr/lib/qt/mkspecs/features/spec_post.prf \ + .qmake.stash \ /usr/lib/qt/mkspecs/features/exclusive_builds.prf \ /usr/lib/qt/mkspecs/features/toolchain.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/linux-g++/qmake.conf: /usr/lib/qt/mkspecs/features/spec_post.prf: +.qmake.stash: /usr/lib/qt/mkspecs/features/exclusive_builds.prf: /usr/lib/qt/mkspecs/features/toolchain.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/Geometry/LoopSchemeMaskT.hh \ ../OpenMesh/inc/OpenMesh/Core/Mesh/TriMeshT.cc \ - ui_mainwindow.h + ui_mainwindow.h \ + meshviewerwidget.h $(CXX) -c $(CXXFLAGS) $(INCPATH) -o mainwindow.o mainwindow.cpp meshviewerwidget.o: meshviewerwidget.cpp meshviewerwidget.h \ diff --git a/mainwindow.cpp b/mainwindow.cpp index a710571..a30b6db 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -2,6 +2,7 @@ #include "ui_mainwindow.h" #include #include +#include using namespace std; /* **** début de la partie à compléter **** */ @@ -102,15 +103,20 @@ void MainWindow::showPath(MyMesh* _mesh, int v1, int v2) { // on réinitialise l'affichage 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 - _mesh->set_color(_mesh->vertex_handle(v1), MyMesh::Color(0, 255, 0)); - _mesh->set_color(_mesh->vertex_handle(v2), MyMesh::Color(0, 255, 0)); - _mesh->data(_mesh->vertex_handle(v1)).thickness = 12; - _mesh->data(_mesh->vertex_handle(v2)).thickness = 12; - - /* **** à compléter ! **** */ + // 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(v2), MyMesh::Color(0, 255, 0)); + _mesh->data(_mesh->vertex_handle(v1)).thickness = 12; + _mesh->data(_mesh->vertex_handle(v2)).thickness = 12; + /* **** à 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 displayMesh(_mesh); } @@ -127,38 +133,35 @@ int minimal_new(vector dist, set visited) { return mini_id; } -vector meinDijkstra(MyMesh *_mesh, int v1, int v2) { +vector meinDijkstra(MyMesh *_mesh, int v1, int v2) { set visited_nodes_id = {}; const int nb = _mesh->n_faces(); vector dist_min (nb, ULONG_MAX); - vector prec_hv_id (nb, -1); + vector prec_hf (nb); dist_min[v1] = 0; int current; VertexHandle current_node; uint distance; - VertexHandle following; + int following; while (visited_nodes_id.size() != nb) { current = minimal_new(dist_min, visited_nodes_id); visited_nodes_id.insert(current); if (current == v2) break; current_node = _mesh->vertex_handle(current); 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] + _mesh->valence(cur_hf.edge); - following = cur_hf.outgoingvertex; + distance = dist_min[current] + 1; + following = _mesh->to_vertex_handle(*voh_it).idx(); if (distance < dist_min[following]) { - dist_min[successeur] = distance; - prec_hv_id[successeur] = *voh_it->idx; + dist_min[following] = distance; + prec_hf[following] = _mesh->opposite_halfedge_handle(*voh_it); } } } - vector path; - if (prec_hv_id[v2] != -1) { - current = v2; - while (predecesseur[current] != -1) { - path.push_back(predecesseur[current].edge); - current = path.end()->incoming_node; - } + vector path; + current = v2; + while (current != v1) { + path.push_back(_mesh->edge_handle(prec_hf[current]).idx()); + current = _mesh->to_vertex_handle(prec_hf[current]).idx(); } return path; } diff --git a/mainwindow.h b/mainwindow.h index b41b618..4900309 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -5,7 +5,7 @@ #include #include #include - +#include namespace Ui { class MainWindow; } @@ -75,5 +75,6 @@ private: Ui::MainWindow *ui; }; +std::vector meinDijkstra(MyMesh *_mesh, int v1, int v2); #endif // MAINWINDOW_H diff --git a/mainwindow.ui b/mainwindow.ui index 72e8ff4..c83d0e0 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -7,7 +7,7 @@ 0 0 632 - 408 + 431 @@ -445,7 +445,11 @@ - + + + 999999999 + + @@ -487,7 +491,7 @@ 0 0 632 - 22 + 30 diff --git a/moc_mainwindow.cpp b/moc_mainwindow.cpp new file mode 100644 index 0000000..beb0452 --- /dev/null +++ b/moc_mainwindow.cpp @@ -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 +#include "mainwindow.h" +#include +#include +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'mainwindow.h' doesn't include ." +#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(_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(), + 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(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(_a[0]) = -1; + _id -= 10; + } + return _id; +} +QT_WARNING_POP +QT_END_MOC_NAMESPACE diff --git a/moc_meshviewerwidget.cpp b/moc_meshviewerwidget.cpp new file mode 100644 index 0000000..77266de --- /dev/null +++ b/moc_meshviewerwidget.cpp @@ -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 +#include "meshviewerwidget.h" +#include +#include +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'meshviewerwidget.h' doesn't include ." +#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(), + 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(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 diff --git a/moc_predefs.h b/moc_predefs.h new file mode 100644 index 0000000..410369e --- /dev/null +++ b/moc_predefs.h @@ -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 diff --git a/ui_mainwindow.h b/ui_mainwindow.h new file mode 100644 index 0000000..2d6cb78 --- /dev/null +++ b/ui_mainwindow.h @@ -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 +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +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