diff --git a/Canvas.cpp b/Canvas.cpp index 0b12250..36824ae 100644 --- a/Canvas.cpp +++ b/Canvas.cpp @@ -77,6 +77,23 @@ void Canvas::mousePressEvent(QMouseEvent* event) *current_line->p2.x = scene.x(); *current_line->p2.y = scene.y(); + // Временный ограничитель длины линии + double len = sqrt(pow(*current_line->p2.x - *current_line->p1.x, 2) + pow(*current_line->p2.y - *current_line->p1.y, 2)); + if (len < 10) { + delete current_line; + current_line = nullptr; + + points.pop_back(); + points.pop_back(); + params.pop_back(); + params.pop_back(); + + mode = Mode::None; + QMessageBox::critical(this, "WHOOPS", "Sorry, your line is very short", QMessageBox::Ok); + update(); + return; + } + params.push_back(current_line->p2.x); params.push_back(current_line->p2.y);