From 26b078302accce7e70acec2461a967a410150cf5 Mon Sep 17 00:00:00 2001 From: vsv Date: Wed, 13 May 2020 12:06:59 +0300 Subject: [PATCH] bos #19051: EDF - selection by polygon is almost freezing the computer --- src/OCCViewer/OCCViewer_ViewSketcher.cxx | 2 +- src/OCCViewer/OCCViewer_ViewWindow.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/OCCViewer/OCCViewer_ViewSketcher.cxx b/src/OCCViewer/OCCViewer_ViewSketcher.cxx index bd31ff3b3..6e2cbc007 100644 --- a/src/OCCViewer/OCCViewer_ViewSketcher.cxx +++ b/src/OCCViewer/OCCViewer_ViewSketcher.cxx @@ -473,7 +473,7 @@ void OCCViewer_PolygonSketcher::onMouse( QMouseEvent* e ) if ( e->type() == QEvent::MouseButtonRelease && ( e->button() & sketchButton() ) ) { - myResult = closed? Accept : Reject; + myResult = (closed && (points->count() > 2)) ? Accept : Reject; QApplication::postEvent( avp, new QMouseEvent( e->type(), e->pos(), e->globalPos(), e->button(), e->buttons(), e->modifiers() ) ); diff --git a/src/OCCViewer/OCCViewer_ViewWindow.cxx b/src/OCCViewer/OCCViewer_ViewWindow.cxx index a7a0bab06..da790e081 100644 --- a/src/OCCViewer/OCCViewer_ViewWindow.cxx +++ b/src/OCCViewer/OCCViewer_ViewWindow.cxx @@ -3178,7 +3178,7 @@ void OCCViewer_ViewWindow::onSketchingFinished() case Polygon: { QPolygon* aPolygon = (QPolygon*)mypSketcher->data(); - if( aPolygon ) + if( aPolygon && (aPolygon->size() > 2)) { int size = aPolygon->size(); TColgp_Array1OfPnt2d anArray(1, size); -- 2.39.2