def chain_compose_after_inplace_chain_test(): a = PointCloud(np.random.random([10, 2])) b = PointCloud(np.random.random([10, 2])) t = Translation([3, 4]) s = Scale([4, 2]) chain_1 = TransformChain([t, s]) chain_2 = TransformChain([s.pseudoinverse(), t.pseudoinverse()]) chain_1.compose_before_inplace(chain_2) points = PointCloud(np.random.random([10, 2])) chain_res = chain_1.apply(points) assert(np.allclose(points.points, chain_res.points))
def chain_compose_before_inplace_tps_test(): a = PointCloud(np.random.random([10, 2])) b = PointCloud(np.random.random([10, 2])) tps = ThinPlateSplines(a, b) t = Translation([3, 4]) s = Scale([4, 2]) chain = TransformChain([t, s]) chain.compose_before_inplace(tps) points = PointCloud(np.random.random([10, 2])) manual_res = tps.apply(s.apply(t.apply(points))) chain_res = chain.apply(points) assert(np.all(manual_res.points == chain_res.points))
def test_transformchain_compose_before_inplace_order(): m1 = Mock(spec=Transform) m2 = Mock(spec=Transform) tr = TransformChain([m1]) tr.compose_before_inplace(m2) assert tr.transforms[1] is m2
def transformchain_compose_before_inplace_order_test(): m1 = Mock(spec=Transform) m2 = Mock(spec=Transform) tr = TransformChain([m1]) tr.compose_before_inplace(m2) assert (tr.transforms[1] is m2)