Coincedent points

This commit is contained in:
ParkSuMin
2025-12-07 16:49:54 +03:00
parent 5c0e04df5b
commit ff06fd1db7
3 changed files with 63 additions and 3 deletions

View File

@@ -18,7 +18,8 @@ enum class Mode : int
{
None = 0,
DrawingLine = 1,
Parallel = 2
Parallel = 2,
Coincedent = 3
};
// Óäîáíûé òèï äëÿ õðàíåíèÿ ïàðû ïàðàëëåëüíûõ ëèíèé (ïîðÿäîê íå âàæåí)
@@ -45,6 +46,7 @@ protected:
private:
// ====================== Ïîèñê è âûáîð ======================
Line* findAt(QPointF&); // èùåò ëèíèþ ïîä êóðñîðîì
Point* findPointAt(QPointF, qreal tolerance = 10.0);
// ====================== Ïàðàëëåëüíîñòü ======================
LinePair makeOrderedPair(Line* l1, Line* l2);
@@ -59,6 +61,7 @@ private:
std::set<LinePair> parallelPairs; // óæå çàïàðàëëåëåííûå ïàðû (çàùèòà îò äóáëåé)
Line* current_line{ nullptr };
Point* firstPoint{ nullptr };
Mode mode{ Mode::None };
int obj_count{ 0 }; // òåã äëÿ íîâûõ îáúåêòîâ