Пример #1
0
 def test_get_edges(self):
     b = Box(1, 2, 3)
     e = b.get_edges(tf_identity)
     row, col = e.shape
     assert row == 12
     assert col == 6
     v = b.get_vertices(tf_identity)
     # check only one edge
     v0 = np.hstack((v[0], v[1]))
     assert_almost_equal(v0, e[0])
Пример #2
0
 def test_get_vertices(self):
     b = Box(1, 2, 3)
     v = b.get_vertices(tf_identity)
     desired = np.array([
         [-0.5, 1, 1.5],
         [-0.5, 1, -1.5],
         [-0.5, -1, 1.5],
         [-0.5, -1, -1.5],
         [0.5, 1, 1.5],
         [0.5, 1, -1.5],
         [0.5, -1, 1.5],
         [0.5, -1, -1.5],
     ])
     assert_almost_equal(v, desired)
Пример #3
0
 def test_set_transform(self):
     b = Box(1, 2, 3)
     tf = np.eye(4)
     tf[0, 3] = 10.5
     v = b.get_vertices(tf)
     desired = np.array([
         [10, 1, 1.5],
         [10, 1, -1.5],
         [10, -1, 1.5],
         [10, -1, -1.5],
         [11, 1, 1.5],
         [11, 1, -1.5],
         [11, -1, 1.5],
         [11, -1, -1.5],
     ])
     assert_almost_equal(v, desired)
Пример #4
0
 def test_set_transform2(self):
     b = Box(1, 2, 3)
     tf = np.eye(4)
     # rotate pi / 2 around x-axis
     tf[1:3, 1:3] = np.array([[0, -1], [1, 0]])
     v = b.get_vertices(tf)
     desired = np.array([
         [-0.5, -1.5, 1],
         [-0.5, 1.5, 1],
         [-0.5, -1.5, -1],
         [-0.5, 1.5, -1],
         [0.5, -1.5, 1],
         [0.5, 1.5, 1],
         [0.5, -1.5, -1],
         [0.5, 1.5, -1],
     ])
     assert_almost_equal(v, desired)