Exemple #1
0
def test_rectpolygon_draw():
    """Test drawing transformed rectpolygons using RectPolygonVisual"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(pos=(0., 0.), height=20.,
                                        width=20., radius=10., color='blue')
        rectpolygon.transform = transforms.STTransform(scale=(2.0, 3.0),
                                                       translate=(50, 50))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon6.png')

        rectpolygon = visuals.Rectangle(pos=(0., 0.), height=20.,
                                        width=20., radius=10.,
                                        color='blue', border_color='red')
        rectpolygon.transform = transforms.STTransform(scale=(2.0, 3.0),
                                                       translate=(50, 50))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon7.png')

        rectpolygon = visuals.Rectangle(pos=(0., 0.), height=60.,
                                        width=60., radius=10.,
                                        border_color='red')
        rectpolygon.transform = transforms.STTransform(scale=(1.5, 0.5),
                                                       translate=(50, 50))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon8.png',
                              min_corr=0.5)

        rectpolygon = visuals.Rectangle(pos=(0., 0.), height=60.,
                                        width=60., radius=[25, 10, 0, 15],
                                        color='blue', border_color='red')
        rectpolygon.transform = transforms.STTransform(scale=(1.5, 0.5),
                                                       translate=(50, 50))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon9.png')
Exemple #2
0
def test_rectangle_draw():
    """Test drawing rectpolygons without transform using RectPolygonVisual"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., color='red')
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon1.png')

        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., radius=10., color='red')
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon2.png')

        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., radius=10., color='red',
                                        border_color=(0, 1, 1, 1))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon3.png')

        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., radius=10.,
                                        border_color='white')
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon4.png',
                              min_corr=0.5)

        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=60.,
                                        width=80., radius=[25, 10, 0, 15],
                                        color='red', border_color=(0, 1, 1, 1))
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot", 'visuals/rectpolygon5.png')
Exemple #3
0
def test_rectangle_draw():
    """Test drawing rectpolygons without transform using RectPolygonVisual"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        color='red',
                                        parent=c.scene)

        assert_image_approved(c.render(), 'visuals/rectpolygon1.png')

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        radius=10.,
                                        color='red',
                                        parent=c.scene)

        assert_image_approved(c.render(), 'visuals/rectpolygon2.png')

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        radius=10.,
                                        color='red',
                                        border_color=(0, 1, 1, 1),
                                        parent=c.scene)

        assert_image_approved(c.render(), 'visuals/rectpolygon3.png')

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        radius=10.,
                                        border_color='white',
                                        parent=c.scene)

        assert_image_approved(c.render(),
                              'visuals/rectpolygon4.png',
                              min_corr=0.5)

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=60.,
                                        width=80.,
                                        radius=[25, 10, 0, 15],
                                        color='red',
                                        border_color=(0, 1, 1, 1),
                                        parent=c.scene)

        assert_image_approved(c.render(), 'visuals/rectpolygon5.png')
Exemple #4
0
def test_rectpolygon_draw():
    """Test drawing transformed rectpolygons using RectPolygonVisual"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(center=(0., 0.),
                                        height=20.,
                                        width=20.,
                                        radius=10.,
                                        color='blue',
                                        parent=c.scene)
        rectpolygon.transform = transforms.STTransform(scale=(2.0, 3.0),
                                                       translate=(50, 50))

        assert_image_approved(c.render(), 'visuals/rectpolygon6.png')

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(0., 0.),
                                        height=20.,
                                        width=20.,
                                        radius=10.,
                                        color='blue',
                                        border_color='red',
                                        parent=c.scene)
        rectpolygon.transform = transforms.STTransform(scale=(2.0, 3.0),
                                                       translate=(50, 50))

        assert_image_approved(c.render(), 'visuals/rectpolygon7.png')

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(0., 0.),
                                        height=60.,
                                        width=60.,
                                        radius=10.,
                                        border_color='red',
                                        parent=c.scene)
        rectpolygon.transform = transforms.STTransform(scale=(1.5, 0.5),
                                                       translate=(50, 50))

        assert_image_approved(c.render(),
                              'visuals/rectpolygon8.png',
                              min_corr=0.5)

        rectpolygon.parent = None
        rectpolygon = visuals.Rectangle(center=(0., 0.),
                                        height=60.,
                                        width=60.,
                                        radius=[25, 10, 0, 15],
                                        color='blue',
                                        border_color='red',
                                        parent=c.scene)
        rectpolygon.transform = transforms.STTransform(scale=(1.5, 0.5),
                                                       translate=(50, 50))

        assert_image_approved(c.render(), 'visuals/rectpolygon9.png')
Exemple #5
0
def test_reactive_draw():
    """Test reactive RectPolygon attributes"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(pos=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        color='red')
        c.draw_visual(rectpolygon)

        rectpolygon.radius = [20., 20, 0., 10.]
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot",
                              'visuals/reactive_rectpolygon1.png')

        rectpolygon.pos = (60, 60, 0)
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot",
                              'visuals/reactive_rectpolygon2.png')

        rectpolygon.color = 'blue'
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot",
                              'visuals/reactive_rectpolygon3.png')

        rectpolygon.border_color = 'yellow'
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot",
                              'visuals/reactive_rectpolygon4.png')

        rectpolygon.radius = 10.
        c.draw_visual(rectpolygon)
        assert_image_approved("screenshot",
                              'visuals/reactive_rectpolygon5.png')
Exemple #6
0
def test_reactive_draw():
    """Test reactive RectPolygon attributes"""
    with TestingCanvas() as c:
        rectpolygon = visuals.Rectangle(center=(50, 50, 0),
                                        height=40.,
                                        width=80.,
                                        color='red',
                                        parent=c.scene)

        rectpolygon.radius = [20., 20, 0., 10.]

        assert_image_approved(c.render(), 'visuals/reactive_rectpolygon1.png')

        rectpolygon.center = (60, 60, 0)

        assert_image_approved(c.render(), 'visuals/reactive_rectpolygon2.png')

        rectpolygon.color = 'blue'

        assert_image_approved(c.render(), 'visuals/reactive_rectpolygon3.png')

        rectpolygon.border_color = 'yellow'

        assert_image_approved(c.render(), 'visuals/reactive_rectpolygon4.png')

        rectpolygon.radius = 10.

        assert_image_approved(c.render(), 'visuals/reactive_rectpolygon5.png')
Exemple #7
0
def test_attributes():
    """Test if attribute checks are in place"""
    with TestingCanvas():
        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., color='red')
        assert_raises(ValueError, setattr, rectpolygon, 'height', 0.)
        assert_raises(ValueError, setattr, rectpolygon, 'width', 0.)
        assert_raises(ValueError, setattr, rectpolygon, 'radius', [10, 0, 5])
        assert_raises(ValueError, setattr, rectpolygon, 'radius', [10.])
        assert_raises(ValueError, setattr, rectpolygon, 'radius', 21.)
Exemple #8
0
def test_attributes():
    """Test if attribute checks are in place"""
    with TestingCanvas():
        rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40.,
                                        width=80., color='red')
        with raises(ValueError):
            rectpolygon.height = 0
        with raises(ValueError):
            rectpolygon.width = 0
        with raises(ValueError):
            rectpolygon.radius = [10, 0, 5]
        with raises(ValueError):
            rectpolygon.radius = [10.]
        with raises(ValueError):
            rectpolygon.radius = 21.
Exemple #9
0
    def __init__(self):
        global pos
        self.visuals = []
        polygon = visuals.Polygon(pos=pos,
                                  color=(0.8, .2, 0, 1),
                                  border_color=(1, 1, 1, 1))
        polygon.transform = transforms.STTransform(scale=(200, 200),
                                                   translate=(600, 600))
        self.visuals.append(polygon)

        ellipse = visuals.Ellipse(pos=(0, 0, 0),
                                  radius=(100, 150),
                                  color=(0.2, 0.2, 0.8, 1),
                                  border_color=(1, 1, 1, 1),
                                  start_angle=180.,
                                  span_angle=150.)
        ellipse.transform = transforms.STTransform(scale=(0.9, 1.5),
                                                   translate=(200, 300))
        self.visuals.append(ellipse)

        rect = visuals.Rectangle(pos=(600, 200, 0),
                                 height=200.,
                                 width=300.,
                                 radius=[30., 30., 0., 0.],
                                 color=(0.5, 0.5, 0.2, 1),
                                 border_color='white')
        self.visuals.append(rect)

        rpolygon = visuals.RegularPolygon(pos=(200., 600., 0),
                                          radius=160,
                                          color=(0.2, 0.8, 0.2, 1),
                                          border_color=(1, 1, 1, 1),
                                          sides=6)
        self.visuals.append(rpolygon)

        SceneCanvas.__init__(self, keys='interactive')
        self.size = (800, 800)
        self.show()