Exemplo n.º 1
0
 def test_vert_inputs(self):
     x0, y0, x1, y1 = 40, 10, 40, 70
     ret1 = utils.line_to_cells(np.array([[x0, y0], [x1, y1]]))
     ret2 = utils.line_to_cells((x0, y0), (x1, y1))
     ret3 = utils.line_to_cells(x0, y0, x1, y1)
     ret1, ret2, ret3 = np.vstack(ret1), np.vstack(ret2), np.vstack(ret3)
     assert (np.all(ret1 == ret2) and np.all(ret1 == ret3))
     assert ret1.shape[1] == 61
Exemplo n.º 2
0
 def test_quadrantIV_angle_inputs(self):
     x0, y0, x1, y1 = 10, 80, 60, 30
     ret1 = utils.line_to_cells(np.array([[x0, y0], [x1, y1]]))
     ret2 = utils.line_to_cells((x0, y0), (x1, y1))
     ret3 = utils.line_to_cells(x0, y0, x1, y1)
     ret1, ret2, ret3 = np.vstack(ret1), np.vstack(ret2), np.vstack(ret3)
     assert (np.all(ret1 == ret2) and np.all(ret1 == ret3))
     assert ret1.shape[1] == 51
     assert np.all(ret1[:, 0] == np.array([x0, y0]))
     assert np.all(ret1[:, -1] == np.array([x1, y1]))
Exemplo n.º 3
0
 def test_quadrantIII_angle_inputs(self):
     x0, y0, x1, y1 = 80, 70, 40, 40
     ret1 = utils.line_to_cells(np.array([[x0, y0], [x1, y1]]))
     ret2 = utils.line_to_cells((x0, y0), (x1, y1))
     ret3 = utils.line_to_cells(x0, y0, x1, y1)
     ret1, ret2, ret3 = np.vstack(ret1), np.vstack(ret2), np.vstack(ret3)
     assert (np.all(ret1 == ret2) and np.all(ret1 == ret3))
     assert ret1.shape[1] == 41
     # check line is sorted correctly: p0 --> p1
     assert np.all(ret1[:, 0] == np.array([x0, y0]))
     assert np.all(ret1[:, -1] == np.array([x1, y1]))
Exemplo n.º 4
0
 def test_bad_inputs(self):
     x0, y0, x1, y1 = 10, 10, 60, 92
     with pytest.raises(TypeError, match=r'Length of input .*'):
         _ = utils.line_to_cells(x0, y0, x1, y1, x0, y1)
     with pytest.raises(ValueError):
         _ = utils.line_to_cells(np.array([[x0, y0], [x1, y1], [x0, y1]]))