Пример #1
0
 def boundingRect(self):
     extra = (self.pen().width() + 20) / 2.0
     return QtCore.QRectF(
         self.p1,
         QtCore.QSizeF(self.p2.x() - self.p1.x(),
                       self.p2.y() - self.p1.y())).normalized().adjusted(
                           -extra, -extra, extra, extra)
Пример #2
0
 def size(self):
     if is_cv2():
         h = int(self.camera.get(cv2.cv.CV_CAP_PROP_FRAME_HEIGHT))
         w = int(self.camera.get(cv2.cv.CV_CAP_PROP_FRAME_WIDTH))
     else:
         h = int(self.camera.get(cv2.CAP_PROP_FRAME_HEIGHT))
         w = int(self.camera.get(cv2.CAP_PROP_FRAME_WIDTH))
     return QtCore.QSizeF(w, h)
Пример #3
0
 def generatePicture(self):
     self.picture = QtGui.QPicture()
     p = QtGui.QPainter(self.picture)
     p.setPen(pg.mkPen('w'))
     tl = QtCore.QPointF(self.topLeft[0], self.topLeft[1])
     size = QtCore.QSizeF(self.size[0], self.size[1])
     p.drawRect(QtCore.QRectF(tl, size))
     p.end()
Пример #4
0
def test_Vector_init():
    """Test construction of Vector objects from a variety of source types."""
    # separate values without z
    v = pg.Vector(0, 1)
    assert v.z() == 0

    v = pg.Vector(0.0, 1.0)
    assert v.z() == 0

    # separate values with 3 args
    v = pg.Vector(0, 1, 2)
    assert v.x() == 0
    assert v.y() == 1
    assert v.z() == 2
    v = pg.Vector(0.0, 1.0, 2.0)
    assert v.x() == 0
    assert v.y() == 1
    assert v.z() == 2

    # all in a list
    v = pg.Vector([0, 1])
    assert v.z() == 0
    v = pg.Vector([0, 1, 2])
    assert v.z() == 2

    # QSizeF
    v = pg.Vector(QtCore.QSizeF(1, 2))
    assert v.x() == 1
    assert v.z() == 0

    # QPoint
    v = pg.Vector(QtCore.QPoint(0, 1))
    assert v.z() == 0
    v = pg.Vector(QtCore.QPointF(0, 1))
    assert v.z() == 0

    # QVector3D
    qv = QtGui.QVector3D(1, 2, 3)
    v = pg.Vector(qv)
    assert v == qv

    with pytest.raises(Exception):
        _ = pg.Vector(1, 2, 3, 4)
Пример #5
0
    ((1, 0), (0, 1), 90),
    ((0, 1), (1, 0), -90),
    ((-1, 0), (-1, 0), 0),
    ((0, -1), (0, 1), 180),
]


@pytest.mark.parametrize("p1, p2, angle", angles)
def test_Point_angle(p1, p2, angle):
    p1 = pg.Point(*p1)
    p2 = pg.Point(*p2)
    assert p2.angle(p1) == angle


inits = [
    (QtCore.QSizeF(1, 0), (1.0, 0.0)),
    ((0, -1), (0.0, -1.0)),
    ([1, 1], (1.0, 1.0)),
]


@pytest.mark.parametrize("initArgs, positions", inits)
def test_Point_init(initArgs, positions):
    if isinstance(initArgs, QtCore.QSizeF):
        point = pg.Point(initArgs)
    else:
        point = pg.Point(*initArgs)
    assert (point.x(), point.y()) == positions


lengths = [((0, 1), 1), ((1, 0), 1), ((0, 0), 0), ((1, 1), math.sqrt(2)),
Пример #6
0
 def sizeHint(self, hint, constraint):
     if hint not in self._sizeHint:
         return QtCore.QSizeF(0, 0)
     return QtCore.QSizeF(*self._sizeHint[hint])