Example #1
0
                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))
Example #2
0
    # 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)
Example #3
0
            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}, {})



Example #4
0
            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
        }, {})