def test_move(): # Test polygon move D = Device() p = D.add_polygon( [(8,6,7,9), (6,8,9,5)] ) p.move([1.7,0.8]) h = D.hash_geometry(precision = 1e-4) assert(h == '57a86bce5f60f7bc78c7c30473a544b736d2afb3') p.movex(13.9) h = D.hash_geometry(precision = 1e-4) assert(h == '8fe6706e05ebe1512ee2efe2582546b949fbc48f') p.movey(19.2) h = D.hash_geometry(precision = 1e-4) assert(h == '7df43241eca2dd11f267c25876e650eadaca7d9f') # Test Device move D = Device() D.add_polygon( [(8,6,7,9), (6,8,9,5)] ) D.add_polygon( [(8,6,7,9,7,0), (6,8,9,5,7,0)] ) D.move([1.7,0.8]) h = D.hash_geometry(precision = 1e-4) assert(h == 'c863156dd00a590dc02823e1791554d4142b1ea9') # Test label move D = Device() D.add_polygon( [(8,8,8,8), (6,6,6,6)] ) l = D.add_label('testing', position = D.center) print(all(l.center == D.center)) D.rotate(45) print(np.allclose(l.center, D.center)) D.move([70000.5,30000.5]) print(np.allclose(l.center, D.center)) D.rotate(75) print(np.allclose(l.center, D.center)) D.reflect([7,5]) print(np.allclose(l.center, D.center))
def test_reflect(): # Test polygon reflection D = Device() p = D.add_polygon( [(8,6,7,9), (6,8,9,5)] ) p.reflect(p1 = (1.7,2.5), p2 = (4.5, 9.1)) h = D.hash_geometry(precision = 1e-4) assert(h == 'bc6ae5308c2240e425cd503e0cdda30007bbfc4d') # Test Device reflection D = Device() p = D.add_polygon( [(8,6,7,9), (6,8,9,5)] ) D.reflect(p1 = (1.7,2.5), p2 = (4.5, 9.1)) h = D.hash_geometry(precision = 1e-4) assert(h == 'bc6ae5308c2240e425cd503e0cdda30007bbfc4d')