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) gloo.clear() rectpolygon.radius = [20., 20, 0., 10.] c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/reactive_rectpolygon1.png') gloo.clear() rectpolygon.pos = (60, 60, 0) c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/reactive_rectpolygon2.png') gloo.clear() rectpolygon.color = 'blue' c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/reactive_rectpolygon3.png') gloo.clear() rectpolygon.border_color = 'yellow' c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/reactive_rectpolygon4.png') gloo.clear() rectpolygon.radius = 10. c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/reactive_rectpolygon5.png')
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_equal("screenshot", 'visuals/rectpolygon1.png') gloo.clear() rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40., width=80., radius=10., color='red') c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/rectpolygon2.png') gloo.clear() 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_equal("screenshot", 'visuals/rectpolygon3.png') gloo.clear() rectpolygon = visuals.Rectangle(pos=(50, 50, 0), height=40., width=80., radius=10., border_color='white') c.draw_visual(rectpolygon) assert_image_equal("screenshot", 'visuals/rectpolygon4.png', limit=0.7) gloo.clear() 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_equal("screenshot", 'visuals/rectpolygon5.png')
def test_reactive_draw(): """Test reactive regular polygon attributes""" with TestingCanvas() as c: rpolygon = visuals.RegularPolygon(pos=[50, 50, 0.], radius=20, sides=8, color='yellow') c.draw_visual(rpolygon) rpolygon.pos = [70, 40, 0.] c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/reactive_regular_polygon1.png') rpolygon.radius = 25 c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/reactive_regular_polygon2.png') rpolygon.color = 'red' c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/reactive_regular_polygon3.png') rpolygon.border_color = 'yellow' c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/reactive_regular_polygon4.png') rpolygon.sides = 6 c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/reactive_regular_polygon5.png')
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_equal("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_equal("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_equal("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_equal("screenshot", 'visuals/rectpolygon4.png', limit=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_equal("screenshot", 'visuals/rectpolygon5.png')
def test_text(): """Test basic text support""" with TestingCanvas(bgcolor='w', size=(92, 92), dpi=92) as c: pos = [92 // 2] * 2 text = Text('testing', font_size=20, color='k', pos=pos, anchor_x='center', anchor_y='baseline') c.draw_visual(text) # Test image created in Illustrator CS5, 1"x1" output @ 92 DPI assert_image_equal("screenshot", 'visuals/text1.png')
def test_histogram(): """Test histogram visual""" size = (200, 100) with TestingCanvas(size=size, bgcolor='w') as c: data = np.array([0., 0., 1.]) hist = Histogram(data, bins=2, color='k') # the result should be 2 high by 1 wide, so we scale it up hist.transform = STTransform((size[0], -size[1] // 2, 1), (0, size[1])) c.draw_visual(hist) expected = np.zeros(size[::-1] + (3, )) expected[:size[1] // 2, -size[0] // 2:] = 1. assert_image_equal("screenshot", expected)
def test_text(): """Test basic text support""" with TestingCanvas(bgcolor='w', size=(92, 92)) as c: pos = [92 // 2] * 2 text = Text('testing', font_size=20, color='k', pos=pos, anchor_x='center', anchor_y='baseline') c.draw_visual(text) # This limit seems large, but the images actually match quite well... # TODO: we should probably make more "modes" for assert_image_equal # at some point # Test image created in Illustrator CS5, 1"x1" output @ 92 DPI assert_image_equal("screenshot", 'visuals/text1.png', limit=840)
def test_arc_draw1(): """Test drawing arcs using EllipseVisual""" with TestingCanvas() as c: ellipse = visuals.Ellipse(pos=(50., 50.), radius=(20, 15), start_angle=150., span_angle=120., color=(0, 0, 1, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/arc1.png') ellipse = visuals.Ellipse(pos=(50., 50.), radius=(20, 15), start_angle=150., span_angle=120., border_color=(1, 0, 0, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/arc2.png', 0.6)
def test_text(): """Test basic text support""" with TestingCanvas(bgcolor='w', size=(92, 92)) as c: c.glir.clear() # Just to be safe pos = [92 // 2] * 2 text = Text('testing', font_size=20, color='k', pos=pos, anchor_x='center', anchor_y='baseline') c.draw_visual(text) # This limit seems large, but the images actually match quite well... # TODO: we should probably make more "modes" for assert_image_equal # at some point # Test image created in Illustrator CS5, 1"x1" output @ 92 DPI assert_image_equal("screenshot", 'visuals/text1.png', limit=840)
def test_image(): """Test image visual""" size = (100, 50) with TestingCanvas(size=size, bgcolor='w') as c: for three_d in (True, False): shape = size[::-1] + ((3,) if three_d else ()) data = np.random.rand(*shape) image = Image(data, cmap='grays', clim=[0, 1]) c.draw_visual(image) if three_d: expected = data else: expected = np.tile(data[:, :, np.newaxis], (1, 1, 3)) assert_image_equal("screenshot", expected)
def test_square_draw(): """Test drawing squares without transforms using PolygonVisual""" pos = np.array([[-0.5, 0.5, 0], [0.5, 0.5, 0], [0.5, -0.5, 0], [-0.5, -0.5, 0]]) with TestingCanvas() as c: polygon = visuals.Polygon(pos=pos, color=(1, 0, 0, 1)) polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/square1.png') gloo.clear() polygon = visuals.Polygon(pos=pos, color=(1, 0, 0, 1), border_color=(1, 1, 1, 1)) polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/square2.png') gloo.clear() polygon = visuals.Polygon(pos=pos, border_color=(1, 1, 1, 1)) polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/square3.png') gloo.clear() polygon = visuals.Polygon(pos=pos, border_color=(1, 0, 1, 1), border_width=2) polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/square4.png')
def test_image(): """Test image visual""" size = (100, 50) with TestingCanvas(size=size, bgcolor='w') as c: for three_d in (True, False): shape = size[::-1] + ((3, ) if three_d else ()) data = np.random.rand(*shape) image = Image(data, cmap='grays', clim=[0, 1]) c.draw_visual(image) if three_d: expected = data else: expected = np.tile(data[:, :, np.newaxis], (1, 1, 3)) assert_image_equal("screenshot", expected)
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_equal("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_equal("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_equal("screenshot", 'visuals/rectpolygon8.png', limit=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_equal("screenshot", 'visuals/rectpolygon9.png')
def test_spectrogram(): """Test spectrogram visual""" n_fft = 256 n_freqs = n_fft // 2 + 1 size = (100, n_freqs) with TestingCanvas(size=size) as c: data = np.ones(n_fft * 100) spec = Spectrogram(data, n_fft=n_fft, step=n_fft, window=None, color_scale='linear', cmap='grays') c.draw_visual(spec) expected = np.zeros(size[::-1] + (3,)) expected[0] = 1. assert_image_equal("screenshot", expected) freqs = spec.freqs assert len(freqs) == n_freqs assert freqs[0] == 0 assert freqs[-1] == 0.5
def test_ellipse_draw(): """Test drawing transformed ellipses using EllipseVisual""" with TestingCanvas() as c: ellipse = visuals.Ellipse(pos=(0., 0.), radius=(20, 15), color=(0, 0, 1, 1)) ellipse.transform = transforms.STTransform(scale=(2.0, 3.0), translate=(50, 50)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/ellipse1.png') gloo.clear() ellipse = visuals.Ellipse(pos=(0., 0.), radius=(20, 15), color=(0, 0, 1, 1), border_color=(1, 0, 0, 1)) ellipse.transform = transforms.STTransform(scale=(2.0, 3.0), translate=(50, 50)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/ellipse2.png') gloo.clear() ellipse = visuals.Ellipse(pos=(0., 0.), radius=(20, 15), border_color=(1, 0, 0, 1)) ellipse.transform = transforms.STTransform(scale=(2.0, 3.0), translate=(50, 50)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/ellipse3.png')
def test_regular_polygon_draw2(): """Test drawing transformed regular polygons using RegularPolygonVisual""" # noqa with TestingCanvas() as c: rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(0, 0, 1, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon4.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(0, 0, 1, 1), border_color=(1, 0, 0, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon5.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, border_color=(1, 0, 0, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon6.png', 0.6)
def test_rectangle_draw(): """Test drawing rectangles with transforms using PolygonVisual""" pos = np.array([[-0.1, 0.5, 0], [0.1, 0.5, 0], [0.1, -0.5, 0], [-0.1, -0.5, 0]]) with TestingCanvas() as c: polygon = visuals.Polygon(pos=pos, color=(1, 1, 0, 1)) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle1.png') polygon = visuals.Polygon(pos=pos, color=(1, 1, 0, 1), border_color=(1, 0, 0, 1)) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle2.png') polygon = visuals.Polygon(pos=pos, border_color=(1, 0, 0, 1), border_width=1) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 49)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle3.png', 0.7)
def test_regular_polygon_draw1(): """Test drawing regular polygons without transforms using RegularPolygonVisual""" # noqa with TestingCanvas() as c: rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(1, 0, 0, 1)) rpolygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon1.png') rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(1, 0, 0, 1), border_color=(0, 1, 1, 1)) rpolygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon2.png') rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, border_color=(0, 1, 1, 1)) rpolygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon3.png', 0.7)
def test_rectangle_draw(): """Test drawing rectangles with transforms using PolygonVisual""" pos = np.array([[-0.1, 0.5, 0], [0.1, 0.5, 0], [0.1, -0.5, 0], [-0.1, -0.5, 0]]) with TestingCanvas() as c: polygon = visuals.Polygon(pos=pos, color=(1, 1, 0, 1)) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle1.png') gloo.clear() polygon = visuals.Polygon(pos=pos, color=(1, 1, 0, 1), border_color=(1, 0, 0, 1)) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 50)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle2.png') gloo.clear() polygon = visuals.Polygon(pos=pos, border_color=(1, 0, 0, 1), border_width=1) polygon.transform = transforms.STTransform(scale=(200.0, 25), translate=(50, 49)) c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/rectangle3.png', 0.7)
def test_reactive_draw(): """Test reactive polygon attributes""" pos = np.array([[-0.1, 0.5, 0], [0.1, 0.5, 0], [0.1, -0.5, 0], [-0.1, -0.5, 0]]) with TestingCanvas() as c: polygon = visuals.Polygon(pos=pos, color='yellow') polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) gloo.clear() polygon.pos += [0.1, -0.1, 0] c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon1.png') gloo.clear() polygon.color = 'red' c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon2.png') gloo.clear() polygon.border_color = 'yellow' c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon3.png')
def test_regular_polygon_draw2(): """Test drawing transformed regular polygons using RegularPolygonVisual""" # noqa with TestingCanvas() as c: rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(0, 0, 1, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon4.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(0, 0, 1, 1), border_color=(1, 0, 0, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon5.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, border_color=(1, 0, 0, 1)) rpolygon.transform = transforms.STTransform(scale=(75, 100), translate=(50, 50)) c.draw_visual(rpolygon) assert_image_equal("screenshot", 'visuals/regular_polygon6.png')
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_equal("screenshot", 'visuals/rectpolygon6.png') gloo.clear() 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_equal("screenshot", 'visuals/rectpolygon7.png') gloo.clear() 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_equal("screenshot", 'visuals/rectpolygon8.png', limit=0.7) gloo.clear() 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_equal("screenshot", 'visuals/rectpolygon9.png')
def test_circle_draw(): """Test drawing circles without transform using EllipseVisual""" with TestingCanvas() as c: ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, color=(1, 0, 0, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/circle1.png') gloo.clear() ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, color=(1, 0, 0, 1), border_color=(0, 1, 1, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/circle2.png') gloo.clear() ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, border_color=(0, 1, 1, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/circle3.png', 0.9)
def test_regular_polygon_draw1(): """Test drawing regular polygons without transforms using RegularPolygonVisual""" # noqa with TestingCanvas(): rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(1, 0, 0, 1)) rpolygon.draw() assert_image_equal("screenshot", 'visuals/regular_polygon1.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, color=(1, 0, 0, 1), border_color=(0, 1, 1, 1)) rpolygon.draw() assert_image_equal("screenshot", 'visuals/regular_polygon2.png') gloo.clear() rpolygon = visuals.RegularPolygon(pos=(0., 0.), radius=0.4, sides=8, border_color=(0, 1, 1, 1)) rpolygon.draw() assert_image_equal("screenshot", 'visuals/regular_polygon3.png')
def test_circle_draw(): """Test drawing circles without transform using EllipseVisual""" with TestingCanvas() as c: ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, color=(1, 0, 0, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/circle1.png') ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, color=(1, 0, 0, 1), border_color=(0, 1, 1, 1)) c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/circle2.png') ellipse = visuals.Ellipse(pos=(75, 35, 0), radius=20, border_color=(0, 1, 1, 1)) c.draw_visual(ellipse) # low corr here because borders have some variability # esp. w/HiDPI assert_image_equal("screenshot", 'visuals/circle3.png', 0.7)
def test_square_draw(): """Test drawing squares without transforms using PolygonVisual""" pos = np.array([[-0.5, 0.5, 0], [0.5, 0.5, 0], [0.5, -0.5, 0], [-0.5, -0.5, 0]]) with TestingCanvas(): polygon = visuals.Polygon(pos=pos, color=(1, 0, 0, 1)) polygon.draw() assert_image_equal("screenshot", 'visuals/square1.png') gloo.clear() polygon = visuals.Polygon(pos=pos, color=(1, 0, 0, 1), border_color=(1, 1, 1, 1)) polygon.draw() assert_image_equal("screenshot", 'visuals/square2.png') gloo.clear() polygon = visuals.Polygon(pos=pos, border_color=(1, 1, 1, 1)) polygon.draw() assert_image_equal("screenshot", 'visuals/square3.png')
def test_reactive_draw(): """Test reactive polygon attributes""" pos = np.array([[-0.1, 0.5, 0], [0.1, 0.5, 0], [0.1, -0.5, 0], [-0.1, -0.5, 0]]) with TestingCanvas() as c: polygon = visuals.Polygon(pos=pos, color='yellow') polygon.transform = transforms.STTransform(scale=(50, 50), translate=(50, 50)) c.draw_visual(polygon) polygon.pos += [0.1, -0.1, 0] c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon1.png') polygon.color = 'red' c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon2.png') polygon.border_color = 'yellow' c.draw_visual(polygon) assert_image_equal("screenshot", 'visuals/reactive_polygon3.png', 0.8)
def test_reactive_draw(): """Test reactive ellipse attributes""" with TestingCanvas() as c: ellipse = visuals.Ellipse(pos=[75, 35, 0.], radius=[20, 15], color='yellow') c.draw_visual(ellipse) gloo.clear() ellipse.pos = [70, 40, 0.] c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse1.png') gloo.clear() ellipse.radius = 25 c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse2.png') gloo.clear() ellipse.color = 'red' c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse3.png') gloo.clear() ellipse.border_color = 'yellow' c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse4.png') gloo.clear() ellipse.start_angle = 140. c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse5.png') gloo.clear() ellipse.span_angle = 100. c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse6.png') gloo.clear() ellipse.num_segments = 10. c.draw_visual(ellipse) assert_image_equal("screenshot", 'visuals/reactive_ellipse7.png')