Примитивное перемещение линий
Если точнее, то перемещаем их концевые точки
This commit is contained in:
7
Canvas.h
7
Canvas.h
@@ -41,6 +41,8 @@ public:
|
||||
|
||||
protected:
|
||||
void mousePressEvent(QMouseEvent* event) override;
|
||||
void mouseMoveEvent(QMouseEvent* event) override;
|
||||
void mouseReleaseEvent(QMouseEvent* event) override;
|
||||
void paintEvent(QPaintEvent* event) override;
|
||||
|
||||
private:
|
||||
@@ -52,6 +54,10 @@ private:
|
||||
LinePair makeOrderedPair(Line* l1, Line* l2);
|
||||
bool areAlreadyParallel(Line* l1, Line* l2); // проверка на дубликат
|
||||
|
||||
// ====================== Перемещение ======================
|
||||
Point* draggedPoint{ nullptr };
|
||||
QPointF dragOffset;
|
||||
|
||||
// ====================== Данные сцены ======================
|
||||
System sys; // геометрический солвер
|
||||
QVector<Line*> lines; // завершённые линии
|
||||
@@ -63,6 +69,7 @@ private:
|
||||
Line* current_line{ nullptr };
|
||||
Point* firstPoint{ nullptr };
|
||||
Mode mode{ Mode::None };
|
||||
bool after_constraint{ false };
|
||||
|
||||
int obj_count{ 0 }; // тег для новых объектов
|
||||
int constraints_count{ 0 }; // тег для новых ограничений
|
||||
|
||||
Reference in New Issue
Block a user