From dd701e28fa81bed61d94a748b108c866ee18bca8 Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Tue, 2 Jun 2020 14:08:03 +0200 Subject: [PATCH] Fix Delaunay point removal --- .../TriangulationPointInputAndConflictZone.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/GraphicsView/demo/Triangulation_2/TriangulationPointInputAndConflictZone.h b/GraphicsView/demo/Triangulation_2/TriangulationPointInputAndConflictZone.h index ce85d87d9c2..b387e314025 100644 --- a/GraphicsView/demo/Triangulation_2/TriangulationPointInputAndConflictZone.h +++ b/GraphicsView/demo/Triangulation_2/TriangulationPointInputAndConflictZone.h @@ -37,6 +37,7 @@ protected: Converter convert; QGraphicsScene *scene_; Point p; + bool do_insert; }; @@ -44,7 +45,7 @@ template TriangulationPointInputAndConflictZone::TriangulationPointInputAndConflictZone(QGraphicsScene* s, T * dt_, QObject* parent) - : GraphicsViewInput(parent), dt(dt_), scene_(s) + : GraphicsViewInput(parent), dt(dt_), scene_(s), do_insert(true) {} @@ -54,6 +55,12 @@ template void TriangulationPointInputAndConflictZone::mousePressEvent(QGraphicsSceneMouseEvent *event) { + if(event->modifiers() & ::Qt::ShiftModifier){ + do_insert = false; + return; + } + else + do_insert = true; p = convert(event->scenePos()); if(dt->dimension() < 2 || event->modifiers() != 0 || @@ -91,7 +98,8 @@ TriangulationPointInputAndConflictZone::mouseReleaseEvent(QGraphicsSceneMouse delete *it; } qfaces.clear(); - Q_EMIT( generate(CGAL::make_object(p))); + if(do_insert) + Q_EMIT( generate(CGAL::make_object(p))); }