Example #1
0
def mill(traj, z_start=0, z_stop=None, z_step = 1, FF=3000, FZ=200, options=None):
    'вырезаем траекторию'
    from strategy import Strategy
    from tool import Tool
    cut = Strategy()
    t = Tool()
    t.F = FF
    t.FZ = FZ
    #берем опции
    xx = get_option(options, 'x', 0)
    yy = get_option(options, 'y', 0)
    sc = get_option(options, 'scale', 1)
    ang = get_option(options, 'angle', 0)

    if z_stop == None: #просто один слой там, где скажут
        cut.mill(traj, tool=t, x=xx, y=yy, scale=sc, angle=ang, options=options)
        return

    opt = options.copy()
    z = z_start
    while z >= z_stop:
        opt['z'] = z
        cut.mill(traj, tool=t, x=xx, y=yy, scale=sc, angle=ang, options=opt)        
        z -= z_step

    if z + z_step > z_stop: #дорезаем остатки
        opt['z'] = z_stop
        cut.mill(traj, tool=t, x=xx, y=yy, scale=sc, angle=ang, options=opt)