Exemplo n.º 1
0
    def paintEvent(self, event):

        painter = QPainter(self)

        pen = QPen()
        brush = QBrush(QColor(255, 245, 173, 255))
        painter.setBrush(brush)
        pen.setColor(QColor(20, 10, 70, 255))
        painter.drawRect(0, 0, self.width(), self.height())

        cr = painter

        # При отсутствии ошибок выполняем отрисовку элементов, иначе
        # выводим только сообщение об ошибке.
        if self.error_status is None:

            # Рисуем оси координат.
            CairoDrawing.draw_axis(cr, self.OX_begin, self.OX_end, 'X')
            CairoDrawing.draw_axis(cr, self.OY_begin, self.OY_end, 'Y')
            CairoDrawing.draw_axis(cr, self.OZ_begin, self.OZ_end, 'Z')

            # Рисуем линии проекций.

            pen = QPen()
            pen.setStyle(Qt.DashLine)
            pen.setColor(QColor(115, 117, 115, 255))
            cr.setPen(pen)

            CairoDrawing.draw_line(cr, self.T1, self.TX)
            CairoDrawing.draw_line(cr, self.T1, self.TY)

            CairoDrawing.draw_line(cr, self.T, self.T1)
            CairoDrawing.draw_line(cr, self.T, self.T2)
            CairoDrawing.draw_line(cr, self.T, self.T3)

            CairoDrawing.draw_line(cr, self.T2, self.TX)
            CairoDrawing.draw_line(cr, self.T2, self.TZ)

            CairoDrawing.draw_line(cr, self.T3, self.TY)
            CairoDrawing.draw_line(cr, self.T3, self.TZ)

            CairoDrawing.draw_line(cr, self.TX, self.O)
            CairoDrawing.draw_line(cr, self.TY, self.O)
            CairoDrawing.draw_line(cr, self.TZ, self.O)

            pen.setStyle(Qt.SolidLine)
            pen.setColor(QColor(0, 0, 0, 255))
            cr.setPen(pen)

            # Рисуем точки.
            CairoDrawing.draw_point(cr, self.T, "T", PointType.main)
            CairoDrawing.draw_point(cr, self.O, "O", PointType.main)

            CairoDrawing.draw_point(cr, self.T1, "T1", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.T2, "T2", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.T3, "T3", PointType.subsidiary)

            CairoDrawing.draw_point(cr, self.TX, "TX", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.TY, "TY", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.TZ, "TZ", PointType.subsidiary)

        else:
            cr.drawText(self.width()/5, self.height()/2, self.error_status)
Exemplo n.º 2
0
    def paintEvent(self, event):
        painter = QPainter(self)

        pen = QPen()
        brush = QBrush(QColor(135, 206, 235, 255))
        painter.setBrush(brush)
        pen.setColor(QColor(20, 10, 70, 255))
        painter.drawRect(0, 0, self.width(), self.height())

        # painter.translate(self.width()/2, self.height()/2)
        # painter.set_font_size(16)

        CairoDrawing.draw_line(painter, self.XY_begin, self.XY_end)
        CairoDrawing.draw_line(painter, self.YZ_begin, self.YZ_end)

        CairoDrawing.draw_text(painter, Point(self.YZ_begin.x + 5, self.YZ_begin.y + 10), "-Y")
        CairoDrawing.draw_text(painter, Point(self.YZ_begin.x - 15, self.YZ_begin.y + 10), "Z")
        CairoDrawing.draw_text(painter, Point(self.YZ_end.x + 5, self.YZ_end.y - 10), "Y")
        CairoDrawing.draw_text(painter, Point(self.YZ_end.x - 20, self.YZ_end.y - 10), "-Z")
        CairoDrawing.draw_text(painter, Point(self.XY_begin.x, self.XY_begin.y + 15), "-Y")
        CairoDrawing.draw_text(painter, Point(self.XY_begin.x, self.XY_begin.y - 5), "X")
        CairoDrawing.draw_text(painter, Point(self.XY_end.x - 10, self.XY_end.y - 5), "-X")
        CairoDrawing.draw_text(painter, Point(self.XY_end.x - 10, self.XY_end.y + 15), "Y")

        CairoDrawing.draw_line(painter, self.T1, self.TX)
        CairoDrawing.draw_line(painter, self.TX, self.T2)
        CairoDrawing.draw_line(painter, self.T2, self.TZ)
        CairoDrawing.draw_line(painter, self.TZ, self.T3)
        CairoDrawing.change_pen_dash(painter)
        CairoDrawing.draw_line(painter, self.T3, self.TY1)
        CairoDrawing.draw_line(painter, self.TY2, self.T1)
        CairoDrawing.change_pen_default(painter)

        CairoDrawing.draw_arc(painter, self.TY1, self.TY2, Point(self.width() / 2, self.height() / 2))

        CairoDrawing.draw_point(painter, self.T1, "T1", PointType.main)
        CairoDrawing.draw_point(painter, self.TX, "TX", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.T2, "T2", PointType.main)
        CairoDrawing.draw_point(painter, self.TZ, "TZ", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.T3, "T3", PointType.main)
        CairoDrawing.draw_point(painter, self.TY1, "TY1", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.TY2, "TY2", PointType.subsidiary)

        CairoDrawing.draw_line(painter, self.C1, self.CX, p2_name="CX")
        CairoDrawing.draw_line(painter, self.CX, self.C2, p2_name="C2")
        CairoDrawing.draw_line(painter, self.C2, self.CZ, p2_name="CZ")
        CairoDrawing.draw_line(painter, self.CZ, self.C3, p2_name="C3")
        CairoDrawing.change_pen_dash(painter)
        CairoDrawing.draw_line(painter, self.C3, self.CY1, p2_name="CY1")
        CairoDrawing.draw_line(painter, self.CY2, self.C1, "CY2", "C1")
        CairoDrawing.change_pen_default(painter)

        CairoDrawing.draw_arc(painter, self.CY1, self.CY2, Point(self.width() / 2, self.height() / 2))

        CairoDrawing.draw_point(painter, self.C1, "C1", PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CX, "CX", PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.C2, "C2", PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CZ, "CZ", PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.C3, "C3", PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CY1, "CY1", PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.CY2, "CY2", PointType.observer_subsidiary)
Exemplo n.º 3
0
    def paintEvent(self, event):
        painter = QPainter(self)

        pen = QPen()
        brush = QBrush(QColor(135, 206, 235, 255))
        painter.setBrush(brush)
        pen.setColor(QColor(20, 10, 70, 255))
        painter.drawRect(0, 0, self.width(), self.height())

        # painter.translate(self.width()/2, self.height()/2)
        # painter.set_font_size(16)

        CairoDrawing.draw_line(painter, self.XY_begin, self.XY_end)
        CairoDrawing.draw_line(painter, self.YZ_begin, self.YZ_end)

        CairoDrawing.draw_text(
            painter, Point(self.YZ_begin.x + 5, self.YZ_begin.y + 10), "-Y")
        CairoDrawing.draw_text(
            painter, Point(self.YZ_begin.x - 15, self.YZ_begin.y + 10), "Z")
        CairoDrawing.draw_text(painter,
                               Point(self.YZ_end.x + 5, self.YZ_end.y - 10),
                               "Y")
        CairoDrawing.draw_text(painter,
                               Point(self.YZ_end.x - 20, self.YZ_end.y - 10),
                               "-Z")
        CairoDrawing.draw_text(painter,
                               Point(self.XY_begin.x, self.XY_begin.y + 15),
                               "-Y")
        CairoDrawing.draw_text(painter,
                               Point(self.XY_begin.x, self.XY_begin.y - 5),
                               "X")
        CairoDrawing.draw_text(painter,
                               Point(self.XY_end.x - 10, self.XY_end.y - 5),
                               "-X")
        CairoDrawing.draw_text(painter,
                               Point(self.XY_end.x - 10, self.XY_end.y + 15),
                               "Y")

        CairoDrawing.draw_line(painter, self.T1, self.TX)
        CairoDrawing.draw_line(painter, self.TX, self.T2)
        CairoDrawing.draw_line(painter, self.T2, self.TZ)
        CairoDrawing.draw_line(painter, self.TZ, self.T3)
        CairoDrawing.change_pen_dash(painter)
        CairoDrawing.draw_line(painter, self.T3, self.TY1)
        CairoDrawing.draw_line(painter, self.TY2, self.T1)
        CairoDrawing.change_pen_default(painter)

        CairoDrawing.draw_arc(painter, self.TY1, self.TY2,
                              Point(self.width() / 2,
                                    self.height() / 2))

        CairoDrawing.draw_point(painter, self.T1, "T1", PointType.main)
        CairoDrawing.draw_point(painter, self.TX, "TX", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.T2, "T2", PointType.main)
        CairoDrawing.draw_point(painter, self.TZ, "TZ", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.T3, "T3", PointType.main)
        CairoDrawing.draw_point(painter, self.TY1, "TY1", PointType.subsidiary)
        CairoDrawing.draw_point(painter, self.TY2, "TY2", PointType.subsidiary)

        CairoDrawing.draw_line(painter, self.C1, self.CX, p2_name="CX")
        CairoDrawing.draw_line(painter, self.CX, self.C2, p2_name="C2")
        CairoDrawing.draw_line(painter, self.C2, self.CZ, p2_name="CZ")
        CairoDrawing.draw_line(painter, self.CZ, self.C3, p2_name="C3")
        CairoDrawing.change_pen_dash(painter)
        CairoDrawing.draw_line(painter, self.C3, self.CY1, p2_name="CY1")
        CairoDrawing.draw_line(painter, self.CY2, self.C1, "CY2", "C1")
        CairoDrawing.change_pen_default(painter)

        CairoDrawing.draw_arc(painter, self.CY1, self.CY2,
                              Point(self.width() / 2,
                                    self.height() / 2))

        CairoDrawing.draw_point(painter, self.C1, "C1",
                                PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CX, "CX",
                                PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.C2, "C2",
                                PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CZ, "CZ",
                                PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.C3, "C3",
                                PointType.observer_main)
        CairoDrawing.draw_point(painter, self.CY1, "CY1",
                                PointType.observer_subsidiary)
        CairoDrawing.draw_point(painter, self.CY2, "CY2",
                                PointType.observer_subsidiary)
Exemplo n.º 4
0
    def paintEvent(self, event):

        painter = QPainter(self)

        pen = QPen()
        brush = QBrush(QColor(255, 245, 173, 255))
        painter.setBrush(brush)
        pen.setColor(QColor(20, 10, 70, 255))
        painter.drawRect(0, 0, self.width(), self.height())

        cr = painter

        # При отсутствии ошибок выполняем отрисовку элементов, иначе
        # выводим только сообщение об ошибке.
        if self.error_status is None:

            # Рисуем оси координат.
            CairoDrawing.draw_axis(cr, self.OX_begin, self.OX_end, 'X')
            CairoDrawing.draw_axis(cr, self.OY_begin, self.OY_end, 'Y')
            CairoDrawing.draw_axis(cr, self.OZ_begin, self.OZ_end, 'Z')

            # Рисуем линии проекций.

            pen = QPen()
            pen.setStyle(Qt.DashLine)
            pen.setColor(QColor(115, 117, 115, 255))
            cr.setPen(pen)

            CairoDrawing.draw_line(cr, self.T1, self.TX)
            CairoDrawing.draw_line(cr, self.T1, self.TY)

            CairoDrawing.draw_line(cr, self.T, self.T1)
            CairoDrawing.draw_line(cr, self.T, self.T2)
            CairoDrawing.draw_line(cr, self.T, self.T3)

            CairoDrawing.draw_line(cr, self.T2, self.TX)
            CairoDrawing.draw_line(cr, self.T2, self.TZ)

            CairoDrawing.draw_line(cr, self.T3, self.TY)
            CairoDrawing.draw_line(cr, self.T3, self.TZ)

            CairoDrawing.draw_line(cr, self.TX, self.O)
            CairoDrawing.draw_line(cr, self.TY, self.O)
            CairoDrawing.draw_line(cr, self.TZ, self.O)

            pen.setStyle(Qt.SolidLine)
            pen.setColor(QColor(0, 0, 0, 255))
            cr.setPen(pen)

            # Рисуем точки.
            CairoDrawing.draw_point(cr, self.T, "T", PointType.main)
            CairoDrawing.draw_point(cr, self.O, "O", PointType.main)

            CairoDrawing.draw_point(cr, self.T1, "T1", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.T2, "T2", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.T3, "T3", PointType.subsidiary)

            CairoDrawing.draw_point(cr, self.TX, "TX", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.TY, "TY", PointType.subsidiary)
            CairoDrawing.draw_point(cr, self.TZ, "TZ", PointType.subsidiary)

        else:
            cr.drawText(self.width() / 5, self.height() / 2, self.error_status)