Exemple #1
0
class Triangle(QGraphicsView):

    def __init__(self, x1, y1, x2, y2, x3, y3):
        self.x1 = x1
        self.y1 = y1
        self.x2 = x2
        self.y2 = y2
        self.x3 = x3
        self.y3 = y3

        triangle = QtGui.QPolygonF(3)
        triangle[0] = QtCore.QPoint(self.x1, self.y1)
        triangle[1] = QtCore.QPoint(self.x2, self.y2)
        triangle[2] = QtCore.QPoint(self.x3, self.y3)
        self.triangle = QGraphicsPolygonItem(triangle)

    def draw_triangle(self, scene):
        scene.addItem(self.triangle)

    def move_triangle(self, m, n):
        self.triangle.setPos(m, n)

    def rotate_triangle(self, r):
        self.triangle.setRotation(r)

    def scale_triangle(self, s):
        self.triangle.setScale((s + 50) / 100)

    def recolor_triangle(self, r, g, b):
        self.triangle.setBrush(QColor(r, g, b))
Exemple #2
0
 def create_arrow(tile):
     item = QGraphicsPolygonItem(qt_drawings.arrow_polygon)
     item.setPen(qt_drawings.no_pen)
     if tile:
         item.setBrush(qt_drawings.cyan_brush if tile.is_frozen else qt_drawings.black_brush)
         item.setTransformOriginPoint(qt_drawings.tile_size / 2, qt_drawings.tile_size / 2)
         angle = base_scene_reactor.tile_rotation_angles[tile.is_horizontal][tile.is_positive]
         item.setRotation(angle)
     else:
         item.setBrush(qt_drawings.black_brush)
     return item