dev = devs[int(choice)] except: continue shapeoko = XY(dev, bounds) break print(shapeoko.status()) ε = shapeoko.register(XY.Empty()) shapeoko.head = ε ws = Workspace(shapeoko) # test queuing ws.optimise_queue(True) ws.pause() imcb = lambda im:im.show() ws.enqueue(ε, [Vector(0,0)], lambda _:print(0), {}, {}) ws.enqueue(ε, [Vector(0.05,0.05)], lambda _:print(1), {}, {}) ws.enqueue(ε, [Vector(0.06,0.05)], lambda _:print(2), {}, {}) ws.enqueue(ε, [Vector(0.05,0.04)], lambda _:print(3), {}, {}) ws.enqueue(ε, [Vector(0.08,0.08)], lambda _:print(4), {}, {}) ws.enqueue(ε, [Vector(0.05,0.05)], lambda _:print(5), {}, {}) ws.enqueue(ε, [Vector(0.02,0.05)], lambda _:print(6), {}, {}) ws.play() time.sleep(2) ws.wait() num = input("How many random coordinates? ") random.seed() uni = random.uniform rcoord = lambda:Vector(uni(0,0.1), uni(0,0.1))
# zoom levels z_σ = im.level_count // 2 z_μ = 0 # hardware virtual = XY(w, h) σ = virtual.register(Σ(Layer(im, z_σ, side))) μ = virtual.register(Μ(Layer(im, z_μ, side), (2592,1944))) p = virtual.register(Pen()) ws = Workspace(virtual) # test queuing ws.optimise_queue(True) ws.pause() imcb = lambda im:im.show() ws.enqueue(σ, [Vector(0,0)], lambda _:print(0), {}, {}) ws.enqueue(μ, [Vector(0.1065,0.1432)], lambda _:print(1), {'a':1}, {}) ws.enqueue(μ, [Vector(0.2789,0.2809)], lambda _:print(2), {'a':2}, {}) ws.enqueue(μ, [Vector(0.1012,0.2544)], lambda _:print(3), {'a':2}, {}) ws.enqueue(μ, [Vector(0.1065,0.1432)], lambda _:print(4), {'a':2}, {}) ws.enqueue(μ, [Vector(0.2789,0.2809)], lambda _:print(5), {'a':1}, {}) ws.enqueue(μ, [Vector(0.1012,0.2544)], lambda _:print(6), {'a':1}, {}) ws.play() # test canvas μ.calibrate() ws.optimise_queue(False) poly = Rectangle(Vector(0.05,0.05), Vector(0,1), 0.15, 0.1) canvas = Canvas(ws, {'a':1}, poly, 5e-6, 900, 100) canvas.wait(False) ws.optimise_queue(True)
print("goodbye.") os._exit(0) else: try: dev = devs[int(choice)] except: continue shapeoko = XY(dev, bounds) break print(shapeoko.status()) ε = shapeoko.register(XY.Empty()) ν = shapeoko.register(Needle()) shapeoko.head = ε shapeoko.head = ν ws = Workspace(shapeoko) ws.optimise_queue(False) down = 0 up = 15 done = threading.Event() ws.enqueue(ν, [Vector(0,0)], lambda _:done.set(), {'down': up, 'up': up}, {}) done.wait() input("Ready? ") while True: ws.enqueue(ν, [Vector(0,0), Vector(0,0.05), Vector(0.05,0.05), Vector(0.05,0)], lambda _:None, {'down': down, 'up': down}, {})
shapeoko = XY(dev, bounds) break print(shapeoko.status()) ε = shapeoko.register(XY.Empty()) ν = shapeoko.register(Needle()) shapeoko.head = ε shapeoko.head = ν ws = Workspace(shapeoko) ws.optimise_queue(False) down = 0 up = 15 done = threading.Event() ws.enqueue(ν, [Vector(0, 0)], lambda _: done.set(), { 'down': up, 'up': up }, {}) done.wait() input("Ready? ") while True: ws.enqueue(ν, [ Vector(0, 0), Vector(0, 0.05), Vector(0.05, 0.05), Vector(0.05, 0) ], lambda _: None, { 'down': down, 'up': down }, {})