From a2dd5b77c40cf775030e991b14b4855c7521492b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D1=80=D0=BE=D1=81?= =?UTF-8?q?=D0=BA=D1=83=D1=80=D0=BD=D1=91=D0=B2?= Date: Mon, 11 Jan 2021 15:51:53 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=BE=D1=80=D1=80=D0=B5=D0=BA=D1=82?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=BA=D0=B0=20=D0=BA=D0=BE=D0=BE=D1=80?= =?UTF-8?q?=D0=B4=D0=B8=D0=BD=D0=B0=D1=82=D0=BD=D0=BE=D0=B9=20=D1=81=D0=B5?= =?UTF-8?q?=D1=82=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.cpp | 2 +- qtsgraph.cpp | 48 +++++++++++++++++++++--------------------------- 2 files changed, 22 insertions(+), 28 deletions(-) diff --git a/main.cpp b/main.cpp index 6140283..1aceffb 100644 --- a/main.cpp +++ b/main.cpp @@ -11,6 +11,7 @@ int main(int argc, char *argv[]) */ QTSGraph w(600, 600); + //w.SwapYAxis = true; w.show(); return a.exec(); } @@ -19,7 +20,6 @@ void QTSGraph::PaintBox() { // Начало рисования - ShowAxes(); SetColor(clGreen); Line(0, 0, 600, 600); SetColor(0xFF0000); diff --git a/qtsgraph.cpp b/qtsgraph.cpp index 01e0c37..98b96f8 100644 --- a/qtsgraph.cpp +++ b/qtsgraph.cpp @@ -267,13 +267,10 @@ void QTSGraph::paintEvent(QPaintEvent *event) { QPainter p(this); p.drawPixmap(0, 0, Canvas); + int correctY = 0; + int mult = 1; if(AxesVisible) { - p.setPen(QPen(QBrush(QColor(Qt::lightGray)), 1)); - p.drawLine(Canvas.width() / 2, 0, Canvas.width() / 2, Canvas.height() - 1); - p.drawLine(0, Canvas.height() / 2, Canvas.width() - 1, Canvas.height() / 2); - p.drawText(Canvas.width() / 2 + 2, 12, QString::number(Canvas.width() / 2)); - p.drawText(2, Canvas.height() / 2 - 2, QString::number(Canvas.height() / 2)); p.setPen(QPen(QBrush(QColor(Qt::red)), 3)); if(SwapYAxis) { @@ -283,17 +280,7 @@ void QTSGraph::paintEvent(QPaintEvent *event) p.drawLine(0, Canvas.height() - 1, 0, 0); p.drawLine(10, 10, 0, 0); p.drawText(12, 12, "Y"); - - p.setPen(QPen(QBrush(QColor(0xDDDDDD)), 1)); - p.drawLine(Canvas.width() / 4, 0, Canvas.width() / 4, Canvas.height() - 1); - p.drawLine(0, Canvas.height() / 4, Canvas.width() - 1, Canvas.height() / 4); - p.drawText(Canvas.width() / 4 + 2, 12, QString::number(Canvas.width() / 4)); - p.drawText(2, Canvas.height() / 4 - 2, QString::number(3 * Canvas.height() / 4)); - - p.drawLine(3 * Canvas.width() / 4, 0, 3 * Canvas.width() / 4, Canvas.height() - 1); - p.drawLine(0, 3 * Canvas.height() / 4, Canvas.width() - 1, 3 * Canvas.height() / 4); - p.drawText(3 * Canvas.width() / 4 + 2, 12, QString::number(3 * Canvas.width() / 4)); - p.drawText(2, 3 * Canvas.height() / 4 - 2, QString::number(Canvas.height() / 4)); + correctY = 1; } else { @@ -303,18 +290,25 @@ void QTSGraph::paintEvent(QPaintEvent *event) p.drawLine(0, Canvas.height() - 1, 0, 0); p.drawLine(10, Canvas.height() - 10, 0, Canvas.height() - 1); p.drawText(13, Canvas.height() - 2, "Y"); - - p.setPen(QPen(QBrush(QColor(0xDDDDDD)), 1)); - p.drawLine(Canvas.width() / 4, 0, Canvas.width() / 4, Canvas.height() - 1); - p.drawLine(0, Canvas.height() / 4, Canvas.width() - 1, Canvas.height() / 4); - p.drawText(Canvas.width() / 4 + 2, 12, QString::number(Canvas.width() / 4)); - p.drawText(2, Canvas.height() / 4 - 2, QString::number(Canvas.height() / 4)); - - p.drawLine(3 * Canvas.width() / 4, 0, 3 * Canvas.width() / 4, Canvas.height() - 1); - p.drawLine(0, 3 * Canvas.height() / 4, Canvas.width() - 1, 3 * Canvas.height() / 4); - p.drawText(3 * Canvas.width() / 4 + 2, 12, QString::number(3 * Canvas.width() / 4)); - p.drawText(2, 3 * Canvas.height() / 4 - 2, QString::number(3 * Canvas.height() / 4)); } + p.setPen(QPen(QBrush(QColor(Qt::lightGray)), 1)); + p.drawLine(Canvas.width() / 2, 0, Canvas.width() / 2, Canvas.height() - 1); + p.drawLine(0, Canvas.height() / 2 - correctY, Canvas.width() - 1, Canvas.height() / 2 - correctY); + p.drawText(Canvas.width() / 2 + 2, 12, QString::number(Canvas.width() / 2)); + p.drawText(2, Canvas.height() / 2 - 2, QString::number(Canvas.height() / 2)); + + p.setPen(QPen(QBrush(QColor(0xDDDDDD)), 1)); + p.drawLine(Canvas.width() / 4, 0, Canvas.width() / 4, Canvas.height() - 1); + p.drawLine(0, Canvas.height() / 4 - correctY, Canvas.width() - 1, Canvas.height() / 4 - correctY); + p.drawText(Canvas.width() / 4 + 2, 12, QString::number(Canvas.width() / 4)); + if(correctY) mult = 3; + p.drawText(2, Canvas.height() / 4 - 2, QString::number(mult * Canvas.height() / 4)); + + p.drawLine(3 * Canvas.width() / 4, 0, 3 * Canvas.width() / 4, Canvas.height() - 1); + p.drawLine(0, 3 * Canvas.height() / 4 - 1, Canvas.width() - 1, 3 * Canvas.height() / 4 - correctY); + p.drawText(3 * Canvas.width() / 4 + 2, 12, QString::number(3 * Canvas.width() / 4)); + mult = correctY ? 1 : 3; + p.drawText(2, 3 * Canvas.height() / 4 - 2, QString::number(mult * Canvas.height() / 4)); } }