From f76bb197344e86dc1cb793c2ec07867541848c0e Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Wed, 8 Jul 2015 12:16:51 +0200 Subject: [PATCH] Windows fix - add an attribute at the application in the main() function - add a custom context to the viewer --- AABB_tree/demo/AABB_tree/AABB_demo.cpp | 1 + AABB_tree/demo/AABB_tree/Scene.cpp | 1 - AABB_tree/demo/AABB_tree/Viewer.cpp | 3 +- AABB_tree/demo/AABB_tree/Viewer.h | 14 +- .../demo/Alpha_shapes_3/Alpha_shape_3.cpp | 1 + Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.cpp | 7 +- Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h | 17 +- .../Circular_kernel_3/Circular_kernel_3.cpp | 4 +- .../demo/Circular_kernel_3/Viewer.cpp | 6 +- .../demo/Circular_kernel_3/Viewer.h | 2 + .../Linear_cell_complex_3_demo.cpp | 2 + .../demo/Linear_cell_complex/Viewer.cpp | 12 + .../demo/Linear_cell_complex/Viewer.h | 12 +- Mesh_3/demo/Mesh_3/Mesh_3.cpp | 2 + Mesh_3/demo/Mesh_3/src/CGAL_demo/Viewer.cpp | 3 +- .../Periodic_3_triangulation_3/CMakeLists.txt | 4 +- .../Periodic_3_triangulation_3/MainWindow.h | 3 +- .../Periodic_3_triangulation_3/MainWindow.ui | 535 +++++++++--------- .../demo/Periodic_3_triangulation_3/Scene.cpp | 6 +- .../demo/Periodic_3_triangulation_3/Scene.h | 2 - .../periodic_3_triangulation_3_demo.cpp | 2 +- .../Periodic_Lloyd_3/Periodic_Lloyd_3.cpp | 2 + .../demo/Periodic_Lloyd_3/Viewer.h | 3 +- .../Polyhedron/CGAL_demo/Viewer_interface.h | 6 +- Polyhedron/demo/Polyhedron/Polyhedron_3.cpp | 2 + Polyhedron/demo/Polyhedron/Viewer.cpp | 11 - .../demo/Triangulation_3/T3_demo.cpp | 2 + Triangulation_3/demo/Triangulation_3/Viewer.h | 4 +- 28 files changed, 331 insertions(+), 338 deletions(-) diff --git a/AABB_tree/demo/AABB_tree/AABB_demo.cpp b/AABB_tree/demo/AABB_tree/AABB_demo.cpp index 083a4e0bf19..6fa38052e2e 100644 --- a/AABB_tree/demo/AABB_tree/AABB_demo.cpp +++ b/AABB_tree/demo/AABB_tree/AABB_demo.cpp @@ -38,6 +38,7 @@ int main(int argc, char **argv) app.setOrganizationDomain("inria.fr"); app.setOrganizationName("INRIA"); app.setApplicationName("AABB tree demo"); + //for windows app.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGALQt (Qt4 or Qt5). diff --git a/AABB_tree/demo/AABB_tree/Scene.cpp b/AABB_tree/demo/AABB_tree/Scene.cpp index 90bce022f8f..bb332daedb5 100644 --- a/AABB_tree/demo/AABB_tree/Scene.cpp +++ b/AABB_tree/demo/AABB_tree/Scene.cpp @@ -1321,7 +1321,6 @@ void Scene::initGL(Viewer *viewer) // qFatal("Could not obtain required OpenGL context version"); // exit(1); //} - qDebug()<<"Context's major version ="<context()->format().majorVersion(); if(!gl->initializeOpenGLFunctions()) { qFatal("ERROR : OpenGL Functions not initialized. Check your OpenGL Verison (should be >=3.3)"); diff --git a/AABB_tree/demo/AABB_tree/Viewer.cpp b/AABB_tree/demo/AABB_tree/Viewer.cpp index 40f2ce75702..d8d359c89e0 100644 --- a/AABB_tree/demo/AABB_tree/Viewer.cpp +++ b/AABB_tree/demo/AABB_tree/Viewer.cpp @@ -2,9 +2,10 @@ #include "Scene.h" #include #include +#include Viewer::Viewer(QWidget* parent) - : QGLViewer(createContext(),parent), + : QGLViewer(CGAL::Qt::createOpenGLContext(),parent), m_pScene(NULL), m_custom_mouse(false) { diff --git a/AABB_tree/demo/AABB_tree/Viewer.h b/AABB_tree/demo/AABB_tree/Viewer.h index 5991ff5bbf4..5361bc12e99 100644 --- a/AABB_tree/demo/AABB_tree/Viewer.h +++ b/AABB_tree/demo/AABB_tree/Viewer.h @@ -3,10 +3,10 @@ #include + // forward declarations class QWidget; class Scene; - class Viewer : public QGLViewer{ Q_OBJECT @@ -18,26 +18,14 @@ public: void draw(); void initializeGL(); void setScene(Scene* pScene); - QOpenGLContext *oglContext()const {return oglContext_;} protected: virtual void mousePressEvent(QMouseEvent* e); virtual void mouseReleaseEvent(QMouseEvent* e); private: - static QGLContext* createContext() - { - QOpenGLContext *context = new QOpenGLContext(); - QSurfaceFormat format; - format.setVersion(3,3); - format.setProfile(QSurfaceFormat::CompatibilityProfile); - context->setFormat(format); - return QGLContext::fromOpenGLContext(context); - } - Scene* m_pScene; bool m_custom_mouse; - QOpenGLContext *oglContext_; }; // end class Viewer #endif // VIEWER_H diff --git a/Alpha_shapes_3/demo/Alpha_shapes_3/Alpha_shape_3.cpp b/Alpha_shapes_3/demo/Alpha_shapes_3/Alpha_shape_3.cpp index 24085e5c134..d1c9061da9e 100644 --- a/Alpha_shapes_3/demo/Alpha_shapes_3/Alpha_shape_3.cpp +++ b/Alpha_shapes_3/demo/Alpha_shapes_3/Alpha_shape_3.cpp @@ -13,6 +13,7 @@ int main(int argc, char** argv) application.setOrganizationDomain("geometryfactory.com"); application.setOrganizationName("GeometryFactory"); application.setApplicationName("Alpha Shape Reconstruction"); + //for Windows application.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGALQt (Qt4 or Qt5). diff --git a/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.cpp b/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.cpp index ba3b73de955..f846a5c8a19 100644 --- a/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.cpp +++ b/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.cpp @@ -2,8 +2,13 @@ #include #include #include +#include "CGAL/Qt/CreateOpenGLContext.h" - +Viewer::Viewer(QWidget* parent) + : QGLViewer(CGAL::Qt::createOpenGLContext(),parent) +{ + are_buffers_initialized = false; +} void Viewer::compile_shaders() diff --git a/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h b/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h index 08b774b5bb6..a5cc54aa490 100644 --- a/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h +++ b/Alpha_shapes_3/demo/Alpha_shapes_3/Viewer.h @@ -9,7 +9,6 @@ #include - class Viewer : public QGLViewer, protected QOpenGLFunctions_3_3_Core{ Q_OBJECT @@ -18,11 +17,7 @@ class Viewer : public QGLViewer, protected QOpenGLFunctions_3_3_Core{ int nr_of_facets; public: - Viewer(QWidget* parent) - : QGLViewer(createContext(),parent) - { - are_buffers_initialized = false; - } + Viewer(QWidget* parent); ~Viewer() { buffers[0].destroy(); @@ -42,16 +37,6 @@ public: void draw(); private: - - static QGLContext* createContext() - { - QOpenGLContext *context = new QOpenGLContext(); - QSurfaceFormat format; - format.setVersion(3,3); - format.setProfile(QSurfaceFormat::CompatibilityProfile); - context->setFormat(format); - return QGLContext::fromOpenGLContext(context); - } bool are_buffers_initialized; //Shaders elements int poly_vertexLocation; diff --git a/Circular_kernel_3/demo/Circular_kernel_3/Circular_kernel_3.cpp b/Circular_kernel_3/demo/Circular_kernel_3/Circular_kernel_3.cpp index 79d42eb9c74..bd3dcc70459 100644 --- a/Circular_kernel_3/demo/Circular_kernel_3/Circular_kernel_3.cpp +++ b/Circular_kernel_3/demo/Circular_kernel_3/Circular_kernel_3.cpp @@ -8,10 +8,12 @@ int main(int argc, char** argv) // Instantiate the viewer. Viewer viewer; - + //for Windows + application.setAttribute(Qt::AA_UseDesktopOpenGL); #if QT_VERSION < 0x040000 // Set the viewer as the application main widget. application.setMainWidget(&viewer); + #else viewer.setWindowTitle("Intersection points of randomly generated circles."); #endif diff --git a/Circular_kernel_3/demo/Circular_kernel_3/Viewer.cpp b/Circular_kernel_3/demo/Circular_kernel_3/Viewer.cpp index 49e1dc4d5d9..ed55e1a3bd9 100644 --- a/Circular_kernel_3/demo/Circular_kernel_3/Viewer.cpp +++ b/Circular_kernel_3/demo/Circular_kernel_3/Viewer.cpp @@ -3,7 +3,11 @@ #include #include #include - +#include "CGAL/IO/Qt_widget_createContext.h" +Viewer::Viewer(QWidget* parent ) + : QGLViewer(CGAL::createContext(),parent) +{ +} void Viewer::compile_shaders() { diff --git a/Circular_kernel_3/demo/Circular_kernel_3/Viewer.h b/Circular_kernel_3/demo/Circular_kernel_3/Viewer.h index 416d5a25379..81b20ba1746 100644 --- a/Circular_kernel_3/demo/Circular_kernel_3/Viewer.h +++ b/Circular_kernel_3/demo/Circular_kernel_3/Viewer.h @@ -10,6 +10,8 @@ typedef CGAL::Exact_predicates_inexact_constructions_kernel EPIC; class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core { +public: + Viewer(QWidget* parent = 0); GLuint dl_nb; protected : virtual void draw(); diff --git a/Linear_cell_complex/demo/Linear_cell_complex/Linear_cell_complex_3_demo.cpp b/Linear_cell_complex/demo/Linear_cell_complex/Linear_cell_complex_3_demo.cpp index ead689f0a8e..62a5f50168d 100644 --- a/Linear_cell_complex/demo/Linear_cell_complex/Linear_cell_complex_3_demo.cpp +++ b/Linear_cell_complex/demo/Linear_cell_complex/Linear_cell_complex_3_demo.cpp @@ -36,6 +36,8 @@ int main(int argc, char** argv) application.setOrganizationDomain("cgal.org"); application.setOrganizationName("CNRS and LIRIS' Establishments"); application.setApplicationName("3D Linear Cell Complex"); + //for windows + application.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGALQt4 or libCGALQt5. // See http://doc.trolltech.com/4.4/qdir.html#Q_INIT_RESOURCE diff --git a/Linear_cell_complex/demo/Linear_cell_complex/Viewer.cpp b/Linear_cell_complex/demo/Linear_cell_complex/Viewer.cpp index 64845f72741..de7112c7620 100644 --- a/Linear_cell_complex/demo/Linear_cell_complex/Viewer.cpp +++ b/Linear_cell_complex/demo/Linear_cell_complex/Viewer.cpp @@ -30,6 +30,7 @@ #include #include #include +#include #include typedef typename LCC::Traits Traits; @@ -49,6 +50,17 @@ typedef CGAL::Constrained_Delaunay_triangulation_2 CDTbase; typedef CGAL::Constrained_triangulation_plus_2 CDT; + +Viewer::Viewer(QWidget* parent) + : QGLViewer(CGAL::Qt::createOpenGLContext(),parent), wireframe(false), flatShading(true), + edges(true), vertices(true), m_displayListCreated(false) +{ + QGLFormat newFormat = this->format(); + newFormat.setSampleBuffers(true); + newFormat.setSamples(16); + this->setFormat(newFormat); + are_buffers_initialized = false; +} //Make sure all the facets are triangles bool Viewer::is_Triangulated() diff --git a/Linear_cell_complex/demo/Linear_cell_complex/Viewer.h b/Linear_cell_complex/demo/Linear_cell_complex/Viewer.h index c0a10abdc43..e5dc086f76f 100644 --- a/Linear_cell_complex/demo/Linear_cell_complex/Viewer.h +++ b/Linear_cell_complex/demo/Linear_cell_complex/Viewer.h @@ -29,7 +29,6 @@ #include #include #include - class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core { Q_OBJECT @@ -53,16 +52,7 @@ class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core public: - Viewer(QWidget* parent) - : QGLViewer(parent), wireframe(false), flatShading(true), - edges(true), vertices(true), m_displayListCreated(false) - { - QGLFormat newFormat = this->format(); - newFormat.setSampleBuffers(true); - newFormat.setSamples(16); - this->setFormat(newFormat); - are_buffers_initialized = false; - } + Viewer(QWidget* parent); ~Viewer() { buffers[0].destroy(); diff --git a/Mesh_3/demo/Mesh_3/Mesh_3.cpp b/Mesh_3/demo/Mesh_3/Mesh_3.cpp index 559a53f9f4f..51008fa0ae7 100644 --- a/Mesh_3/demo/Mesh_3/Mesh_3.cpp +++ b/Mesh_3/demo/Mesh_3/Mesh_3.cpp @@ -10,6 +10,8 @@ int main(int argc, char **argv) app.setOrganizationDomain("geometryfactory.com"); app.setOrganizationName("GeometryFactory"); app.setApplicationName("Mesh_3 demo"); + //for windows + app.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGALQt ( Qt5). // See http://doc.trolltech.com/4.4/qdir.html#Q_INIT_RESOURCE diff --git a/Mesh_3/demo/Mesh_3/src/CGAL_demo/Viewer.cpp b/Mesh_3/demo/Mesh_3/src/CGAL_demo/Viewer.cpp index 9525068f437..564ec702e70 100644 --- a/Mesh_3/demo/Mesh_3/src/CGAL_demo/Viewer.cpp +++ b/Mesh_3/demo/Mesh_3/src/CGAL_demo/Viewer.cpp @@ -1,8 +1,9 @@ #include #include +#include Viewer::Viewer(QWidget* parent, bool antialiasing) - : QGLViewer(parent), + : QGLViewer(CGAL::Qt::createOpenGLContext(), parent), scene(0), antialiasing(antialiasing), twosides(false), diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt index aa45255751d..bec91348456 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/CMakeLists.txt @@ -38,6 +38,7 @@ if (CGAL_FOUND AND OPENGL_FOUND AND Qt5_FOUND AND QGLVIEWER_FOUND AND TARGET Qt5 # use the Qt MOC preprocessor on classes that derive from QObject qt5_generate_moc( "Scene.h" "${CMAKE_CURRENT_BINARY_DIR}/moc_Scene.cpp" ) qt5_generate_moc( "MainWindow.h" "${CMAKE_CURRENT_BINARY_DIR}/moc_MainWindow.cpp" ) + qt5_generate_moc( "Viewer.h" "${CMAKE_CURRENT_BINARY_DIR}/moc_Viewer.cpp" ) if(DEFINED QT_QCOLLECTIONGENERATOR_EXECUTABLE) else() @@ -55,11 +56,12 @@ if (CGAL_FOUND AND OPENGL_FOUND AND Qt5_FOUND AND QGLVIEWER_FOUND AND TARGET Qt5 # Make sure the compiler can find generated .moc files include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) include_directories( ${QT_INCLUDE_DIR} ) - include_directories( ../../include ) + include_directories( ../../include .) # The executable itself add_executable ( periodic_3_triangulation_3_demo Scene.cpp moc_Scene.cpp + Viewer.cpp moc_Viewer.cpp periodic_3_triangulation_3_demo.cpp MainWindow.ui moc_MainWindow.cpp ${UI_FILES} ${RESOURCE_FILES} Periodic_3_triangulation_3.qhc) diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.h b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.h index 622314ce2d6..1d2514ecf57 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.h +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.h @@ -6,11 +6,12 @@ #include #include - #if QT_VERSION >= 0x050000 #include #endif + + class MainWindow : public QMainWindow { diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.ui b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.ui index 598f9d502f9..9dd9403ec49 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.ui +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/MainWindow.ui @@ -1,7 +1,8 @@ - + + MainWindow - - + + 0 0 @@ -9,21 +10,21 @@ 750 - - + + 0 0 - + CGAL Periodic Delaunay Triangulation - - + + - - - + + + 0 0 @@ -32,562 +33,562 @@ - - + + 0 0 962 - 22 + 20 - - + + &File - - - + + + - - + + &Options - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + &Initialization - - - - - + + + + + - - + + &Features - - + + - - + + &Actions - - - - - - - + + + + + + + - - + + Help - - - - + + + + - - - - - - + + + + + + - - - + + + toolBar - + TopToolBarArea - + false - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + :/cgal/Periodic_3_triangulation_3/icons/fileOpen.png:/cgal/Periodic_3_triangulation_3/icons/fileOpen.png - + Load Points - + Ctrl+O - - + + Exit - + Ctrl+Q - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/wireframe.png :/cgal/Periodic_3_triangulation_3/icons/wireframeOff.png:/cgal/Periodic_3_triangulation_3/icons/wireframe.png - + Wireframe - + Switches wireframe rendering on and off - + X - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/planar.png:/cgal/Periodic_3_triangulation_3/icons/planar.png - + Planar triangulation - + Shows only simplices for which z=0 everywhere - + Z - - + + true - + true - - + + :/cgal/Periodic_3_triangulation_3/icons/cover1.png :/cgal/Periodic_3_triangulation_3/icons/cover27.png:/cgal/Periodic_3_triangulation_3/icons/cover1.png - + Draw 1-sheeted covering - + toggles between displaying only one periodic copy of each simplex and the internal representation - + 1 - - + + true - + true - - + + :/cgal/Periodic_3_triangulation_3/icons/multiple.png :/cgal/Periodic_3_triangulation_3/icons/multipleOff.png:/cgal/Periodic_3_triangulation_3/icons/multiple.png - + Draw bordering cells multiply - + Draws each simplex for which the intersection with the fundamental cube is non-empty - + M - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/clipping.png :/cgal/Periodic_3_triangulation_3/icons/clippingOff.png:/cgal/Periodic_3_triangulation_3/icons/clipping.png - + Clip along the cube/square - - + + true - + false - - + + :/cgal/Periodic_3_triangulation_3/icons/twoColorClipping.png:/cgal/Periodic_3_triangulation_3/icons/twoColorClipping.png - + 2-color clipping - + show the clipped part of all clipped edges in a different color - - - + + + :/cgal/Periodic_3_triangulation_3/icons/initGrid.png:/cgal/Periodic_3_triangulation_3/icons/initGrid.png - + Point grid - + pg - + A grid of 36 points that can be triangulated in 1-sheeted covering space - + F5 - - - + + + :/cgal/Periodic_3_triangulation_3/icons/init1.png:/cgal/Periodic_3_triangulation_3/icons/init1.png - + Single point - + F2 - - - + + + :/cgal/Periodic_3_triangulation_3/icons/initRandPlanar.png:/cgal/Periodic_3_triangulation_3/icons/initRandPlanar.png - + Random planar point set - + Initial triangulation of 10 points chosen at random with z=0 - + F4 - - - + + + :/cgal/Periodic_3_triangulation_3/icons/initRand.png:/cgal/Periodic_3_triangulation_3/icons/initRand.png - + Random point set - + Initial triangulation of 30 points chosen at random - + F3 - - - + + + :/cgal/Periodic_3_triangulation_3/icons/init0.png:/cgal/Periodic_3_triangulation_3/icons/init0.png - + Empty scene - + F1 - - + + true - + true - + Draw domain (cube/square) - + D - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/locate.png:/cgal/Periodic_3_triangulation_3/icons/locate.png - + Point location - + Marks the tetrahedron that currently contains the flying ball - + L - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/conflict.png:/cgal/Periodic_3_triangulation_3/icons/conflict.png - + Conflict region - + Shows all tetrahedra in whose circumcircle the flying ball is contained - + C - - + + true - + Hole* - + H - - + + true - + Star* - + S - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/ball.png:/cgal/Periodic_3_triangulation_3/icons/ball.png - + Flying ball - + Shows a ball flying through the cube, showing the periodicity - + B - - + + true - - + + :/cgal/Periodic_3_triangulation_3/icons/pause.png :/cgal/Periodic_3_triangulation_3/icons/play.png:/cgal/Periodic_3_triangulation_3/icons/pause.png - + Pause - + Pauses the flying ball - + P - - - + + + :/cgal/Periodic_3_triangulation_3/icons/inputPointBall.png:/cgal/Periodic_3_triangulation_3/icons/inputPointBall.png - + Insert point - + Insert point at the position of the flying ball (whether it is shown or not) - + I - - - + + + :/cgal/Periodic_3_triangulation_3/icons/inputPointRandom.png:/cgal/Periodic_3_triangulation_3/icons/inputPointRandom.png - + Insert random point - + Insert one point at random position (within the cube) - + R - - + + true - + false - + Draw segments - + 2 - - + + true - + Draw triangles - + 3 - - + + true - + true - + Draw tetrahedra - + 4 - - + + false - - + + :/cgal/Periodic_3_triangulation_3/icons/camera.png:/cgal/Periodic_3_triangulation_3/icons/camera.png - + Grab image - + G - - + + Export pov - + Ctrl+E - - + + Demo Manual - + H - - + + About - + A - - + + About CGAL - + - QGLViewer + Viewer QWidget -
QGLViewer/qglviewer.h
+
Viewer.h
- + @@ -596,11 +597,11 @@ action2_color_clipping setEnabled(bool) - + -1 -1 - + -1 -1 diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.cpp b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.cpp index 282228520be..d31def92de5 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.cpp +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.cpp @@ -1355,9 +1355,9 @@ void Scene::gl_draw_location() { Point cp = Point(c.x(),c.y(),c.z()); // project facet center double px,py,pz; - gluProject(cp.x(),cp.y(),cp.z(), - modelMatrix, projMatrix, viewport, - &px,&py,&pz); + // gluProject(cp.x(),cp.y(),cp.z(), + // modelMatrix, projMatrix, viewport, + // &px,&py,&pz); cf.push_back(Projected_triangle(pz,Triangle(p,q,r))); } } diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.h b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.h index 0f1de2929ee..4f0db183696 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.h +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/Scene.h @@ -75,7 +75,6 @@ public: } ~Scene() { - gluDeleteQuadric(pQuadric); for(int i=0; i<24; i++) buffers[i].destroy(); for(int i=0; i<12; i++) @@ -308,7 +307,6 @@ private: QString materials[6]; QTimer* timer; GLuint l_triangulation, l_domain; - GLUquadricObj* pQuadric; bool flying_ball; bool dlocate, dconflict; diff --git a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/periodic_3_triangulation_3_demo.cpp b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/periodic_3_triangulation_3_demo.cpp index d981940307d..9c7ce5a8aa3 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/periodic_3_triangulation_3_demo.cpp +++ b/Periodic_3_triangulation_3/demo/Periodic_3_triangulation_3/periodic_3_triangulation_3_demo.cpp @@ -10,7 +10,7 @@ int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; - //w.ui->setupUi(); + //w.ui->setupUi(w); w.ui->viewer->restoreStateFromFile(); w.show(); diff --git a/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Periodic_Lloyd_3.cpp b/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Periodic_Lloyd_3.cpp index fba25564ba6..35bc2b091f0 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Periodic_Lloyd_3.cpp +++ b/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Periodic_Lloyd_3.cpp @@ -9,6 +9,8 @@ int main(int argc, char** argv) application.setOrganizationDomain("inria.fr"); application.setOrganizationName("INRIA"); application.setApplicationName("3D Periodic Lloyd"); + //for windows + application.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGAL (Qt4 or QT5). // See http://doc.trolltech.com/4.4/qdir.html#Q_INIT_RESOURCE diff --git a/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Viewer.h b/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Viewer.h index 4576255dc7a..cce393ebe1d 100644 --- a/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Viewer.h +++ b/Periodic_3_triangulation_3/demo/Periodic_Lloyd_3/Viewer.h @@ -7,6 +7,7 @@ #include #include #include +#include class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core { @@ -21,7 +22,7 @@ class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core { int nr_of_facets; public: Viewer(QWidget* parent) - : QGLViewer(parent) + : QGLViewer(CGAL::Qt::createOpenGLContext(), parent) {} ~Viewer() { diff --git a/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h b/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h index 62dc559216c..fc61ad892a0 100644 --- a/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h +++ b/Polyhedron/demo/Polyhedron/CGAL_demo/Viewer_interface.h @@ -4,7 +4,7 @@ #include #include #include - +#include // forward declarations class QWidget; class Scene_draw_interface; @@ -18,8 +18,8 @@ class VIEWER_EXPORT Viewer_interface : public QGLViewer { Q_OBJECT public: - Viewer_interface(QWidget* parent) : QGLViewer(parent) {}; - virtual ~Viewer_interface() {}; + Viewer_interface(QWidget* parent) : QGLViewer(CGAL::Qt::createOpenGLContext(), parent) {} + virtual ~Viewer_interface() {} virtual void setScene(Scene_draw_interface* scene) = 0; virtual bool antiAliasing() const = 0; diff --git a/Polyhedron/demo/Polyhedron/Polyhedron_3.cpp b/Polyhedron/demo/Polyhedron/Polyhedron_3.cpp index 995ecedf133..1e84945a97e 100644 --- a/Polyhedron/demo/Polyhedron/Polyhedron_3.cpp +++ b/Polyhedron/demo/Polyhedron/Polyhedron_3.cpp @@ -38,6 +38,8 @@ int main(int argc, char **argv) app.setOrganizationDomain("geometryfactory.com"); app.setOrganizationName("GeometryFactory"); app.setApplicationName("Polyhedron_3 demo"); + //for windows + app.setAttribute(Qt::AA_UseDesktopOpenGL); // Import resources from libCGAL (Qt4 or Qt5). // See http://doc.trolltech.com/4.4/qdir.html#Q_INIT_RESOURCE diff --git a/Polyhedron/demo/Polyhedron/Viewer.cpp b/Polyhedron/demo/Polyhedron/Viewer.cpp index 241c6e13758..6d471541026 100644 --- a/Polyhedron/demo/Polyhedron/Viewer.cpp +++ b/Polyhedron/demo/Polyhedron/Viewer.cpp @@ -83,21 +83,15 @@ bool Viewer::inFastDrawing() const { void Viewer::draw() { d->inFastDrawing = false; - // ::glFogf(GL_FOG_END, 2*sceneRadius()); - // ::glEnable(GL_FOG); QGLViewer::draw(); d->draw_aux(false, this); - // drawLight(GL_LIGHT0); } void Viewer::fastDraw() { d->inFastDrawing = true; - // ::glFogf(GL_FOG_END, 2*sceneRadius()); - // ::glEnable(GL_FOG); QGLViewer::fastDraw(); d->draw_aux(false, this); - // drawLight(GL_LIGHT0); } void Viewer::initializeGL() @@ -107,11 +101,6 @@ void Viewer::initializeGL() setBackgroundColor(::Qt::white); d->scene->initializeGL(); - // ::glFogf(GL_FOG_DENSITY, 0.05f); - // ::glHint(GL_FOG_HINT, GL_NICEST); - // ::glFogi(GL_FOG_MODE, GL_LINEAR); - // static const GLfloat fogColor[] = {0.5f, 0.5f, 0.5f, 1}; - // ::glFogfv(GL_FOG_COLOR, fogColor); } #include diff --git a/Triangulation_3/demo/Triangulation_3/T3_demo.cpp b/Triangulation_3/demo/Triangulation_3/T3_demo.cpp index 75c2aadc4a9..e321286cfab 100644 --- a/Triangulation_3/demo/Triangulation_3/T3_demo.cpp +++ b/Triangulation_3/demo/Triangulation_3/T3_demo.cpp @@ -30,6 +30,8 @@ int main(int argc, char** argv) app.setOrganizationDomain("inria.fr"); app.setOrganizationName("INRIA"); app.setApplicationName("3D Triangulation Demo"); + //for windows + app.setAttribute(Qt::AA_UseDesktopOpenGL); MainWindow mw; mw.show(); diff --git a/Triangulation_3/demo/Triangulation_3/Viewer.h b/Triangulation_3/demo/Triangulation_3/Viewer.h index d19643c6206..a650253667a 100644 --- a/Triangulation_3/demo/Triangulation_3/Viewer.h +++ b/Triangulation_3/demo/Triangulation_3/Viewer.h @@ -12,7 +12,7 @@ #include #include #include - +#include #include using namespace qglviewer; @@ -24,7 +24,7 @@ class Viewer : public QGLViewer, QOpenGLFunctions_3_3_Core { public: Viewer(QWidget* parent) - : QGLViewer(parent) + : QGLViewer(CGAL::Qt::createOpenGLContext(),parent) , m_showAxis(false) , m_showVertex(true) , m_showDEdge(true)