예제 #1
0
def chain_compose_after_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_after_inplace(tps)

    points = PointCloud(np.random.random([10, 2]))

    manual_res = s.apply(t.apply(tps.apply(points)))
    chain_res = chain.apply(points)
    assert(np.all(manual_res.points == chain_res.points))
예제 #2
0
def test_transformchain_compose_after_inplace_composes_with():
    tr = TransformChain([])
    ref = tr
    no_return = tr.compose_after_inplace(Mock(spec=Transform))
    assert no_return is None
    assert ref is tr
    assert len(tr.transforms) is 1
예제 #3
0
def transformchain_compose_after_inplace_composes_with_test():
    tr = TransformChain([])
    ref = tr
    no_return = tr.compose_after_inplace(Mock(spec=Transform))
    assert (no_return is None)
    assert (ref is tr)
    assert (len(tr.transforms) is 1)
예제 #4
0
def test_transformchain_compose_after_inplace_order():
    m1 = Mock(spec=Transform)
    m2 = Mock(spec=Transform)
    tr = TransformChain([m1])
    tr.compose_after_inplace(m2)
    assert tr.transforms[0] is m2
예제 #5
0
def transformchain_compose_after_inplace_order_test():
    m1 = Mock(spec=Transform)
    m2 = Mock(spec=Transform)
    tr = TransformChain([m1])
    tr.compose_after_inplace(m2)
    assert (tr.transforms[0] is m2)