Пример #1
0
 def test_two_paths(self):
     p1 = path.Path()
     p1.line_to((4, 5, 6))
     p2 = path.Path()
     p2.line_to((7, 8, 6))
     qpath = path.to_qpainter_path([p1, p2])
     assert qpath.elementCount() == 4
     assert qpath.elementAt(0).isMoveTo() is True
     assert qpath.elementAt(1).isLineTo() is True
     assert qpath.elementAt(2).isMoveTo() is True
     assert qpath.elementAt(3).isLineTo() is True
Пример #2
0
 def test_curve4_to(self):
     p = path.Path()
     p.curve4_to((4, 0, 2), (1, 1, 7), (3, 1, 5))
     mpath = path.to_matplotlib_path([p])
     assert tuple(mpath.codes) == (MC.MOVETO, MC.CURVE4, MC.CURVE4,
                                   MC.CURVE4)
     assert Vec2.list(mpath.vertices) == [(0, 0), (1, 1), (3, 1), (4, 0)]
Пример #3
0
 def test_line_to(self):
     p = path.Path()
     p.line_to((4, 5, 6))
     p.line_to((7, 8, 6))
     mpath = path.to_matplotlib_path([p])
     assert tuple(mpath.codes) == (MC.MOVETO, MC.LINETO, MC.LINETO)
     assert Vec2.list(mpath.vertices) == [(0, 0), (4, 5), (7, 8)]
Пример #4
0
 def test_two_paths(self):
     p1 = path.Path()
     p1.line_to((4, 5, 6))
     p2 = path.Path()
     p2.line_to((7, 8, 6))
     mpath = path.to_matplotlib_path([p1, p2])
     assert tuple(mpath.codes) == (
         MC.MOVETO,
         MC.LINETO,
         MC.MOVETO,
         MC.LINETO,
     )
     assert Vec2.list(mpath.vertices) == [
         (0, 0),
         (4, 5),
         (0, 0),
         (7, 8),
     ]
Пример #5
0
    def test_curve4_to(self):
        bez4 = [(4, 0, 2), (1, 1, 7), (3, 1, 5)]
        p = path.Path()
        p.curve4_to(*bez4)
        qpath = path.to_qpainter_path([p])
        assert qpath.elementCount() == 4
        q1 = qpath.elementAt(1)
        assert q1.isCurveTo()  # start of cure
        assert q1.x, q1.y == bez4[1]

        q2 = qpath.elementAt(2)
        assert q2.type == 3  # curve data element
        assert q2.x, q2.y == bez4[2]

        q3 = qpath.elementAt(3)
        assert q3.type == 3  # curve data element
        assert q3.x, q3.y == bez4[0]
Пример #6
0
    def test_line_to(self):
        p = path.Path()
        p.line_to((4, 5, 6))
        p.line_to((7, 8, 6))
        qpath = path.to_qpainter_path([p])
        assert qpath.elementCount() == 3

        m = qpath.elementAt(0)
        assert m.isMoveTo() is True
        assert (m.x, m.y) == (0, 0)

        l1 = qpath.elementAt(1)
        assert l1.isLineTo() is True
        assert (l1.x, l1.y) == (4, 5)

        l2 = qpath.elementAt(2)
        assert l2.isLineTo() is True
        assert (l2.x, l2.y) == (7, 8)
Пример #7
0
    def test_curve3_to(self):
        bez3 = Bezier3P([(0, 0), (2, 1), (4, 0)])
        p = path.Path()
        p.curve3_to(bez3.control_points[2], bez3.control_points[1])
        qpath = path.to_qpainter_path([p])
        # Qt converts quadratic bezier curves unto cubic bezier curves
        assert qpath.elementCount() == 4
        bez4 = quadratic_to_cubic_bezier(bez3)

        q1 = qpath.elementAt(1)
        assert q1.isCurveTo()  # start of cure
        assert q1.x, q1.y == bez4.control_points[1]

        q2 = qpath.elementAt(2)
        assert q2.type == 3  # curve data element
        assert q2.x, q2.y == bez4.control_points[2]

        q3 = qpath.elementAt(3)
        assert q3.type == 3  # curve data element
        assert q3.x, q3.y == bez4.control_points[2]
Пример #8
0
 def spath(self):
     p = path.Path()
     p.line_to((1, 2, 3))
     return p
Пример #9
0
 def quadratic(self):
     p = path.Path()
     p.curve3_to((2, 0), (1, 1))
     return p
Пример #10
0
 def test_two_path(self):
     p1 = path.Path()
     p1.line_to((1, 2, 3))
     p2 = path.Path()
     p2.line_to((-3, -2, -1))
     assert path.bbox([p1, p2]).size == (4, 4, 4)
Пример #11
0
 def test_one_path(self):
     p = path.Path()
     p.line_to((1, 2, 3))
     assert path.bbox([p]).size == (1, 2, 3)