Beispiel #1
0
def update_wall(grid, x, y, geracao):
   if (get_total(grid,x,y) < 30 or not(geracao % 300)):
      return Bricks.build_grid_wall(x, y)
   updated_grid = Bricks.build_grid_wall(x, y)
   for i in range(Config.WIDTH * x):
      for j in range((Config.HEIGHT * y) + Config.WIDTH):
         neighbors = get_neighbors(i, j, Config.WIDTH * x, (Config.HEIGHT * y) + Config.WIDTH, grid)
         if(get_cell(i, j, Config.WIDTH * x, (Config.HEIGHT * y) + Config.WIDTH, grid)):
            if(neighbors < 2):
               updated_grid[i,j] = Config.DEAD
            elif(neighbors > 3):
               updated_grid[i,j] = Config.DEAD
            else:
               updated_grid[i,j] = Config.LIVE
         else:
            if(neighbors == 3):
               updated_grid[i,j] = Config.LIVE
            else:
               updated_grid[i,j] = Config.DEAD
   return updated_grid
Beispiel #2
0
def build_imarray(im, x, y, wall):
   if wall:
      imarray = Bricks.build_grid_wall(x, y)
      pixels = im.load()
      for i in range(x * Config.WIDTH):
      	for j in range((y * Config.HEIGHT) + Config.WIDTH):
      		imarray[i,j] = pixels[i,j] # load method is faster than getpixel: im.getpixel((i,j))
      return imarray
   else:
      imarray = Bricks.build_grid(x, y)
      pixels = im.load()
      for i in range(x * Config.WIDTH):
      	for j in range(y * Config.HEIGHT):
      		imarray[i,j] = pixels[i,j] # load method is faster than getpixel: im.getpixel((i,j))
   return imarray
Beispiel #3
0
def build_imarray(im, x, y, wall):
    if wall:
        imarray = Bricks.build_grid_wall(x, y)
        pixels = im.load()
        for i in range(x * Config.WIDTH):
            for j in range((y * Config.HEIGHT) + Config.WIDTH):
                imarray[i, j] = pixels[
                    i,
                    j]  # load method is faster than getpixel: im.getpixel((i,j))
        return imarray
    else:
        imarray = Bricks.build_grid(x, y)
        pixels = im.load()
        for i in range(x * Config.WIDTH):
            for j in range(y * Config.HEIGHT):
                imarray[i, j] = pixels[
                    i,
                    j]  # load method is faster than getpixel: im.getpixel((i,j))
    return imarray
Beispiel #4
0
    #s = serial.Serial('/dev/ttyS0', 115200)
    s = serial.Serial(Config.SERIAL_PORT, Config.SERIAL_BAUD_RATE, dsrdtr=True)
    s.open()
    turn = 0
    if not options.wall:
        grid = Bricks.build_grid(options.x, options.y)
        while True:
            brick_list = Bricks.build_bricklist(options.x, options.y, grid)
            Bricks.sendserial(brick_list, s)
            turn = turn + 1
            print "geracao ", turn
            time.sleep(0.05)
            grid = GameOfLife.update(grid, options.x, options.y, turn)
    else:
        print "modo wall"
        grid = Bricks.build_grid_wall(options.x, options.y)
        while True:
            brick_list = Bricks.build_wall_bricklist(options.x, options.y,
                                                     grid)
            Bricks.sendserial(brick_list, s)
            turn = turn + 1
            print "geracao ", turn
            time.sleep(0.05)
            grid = GameOfLife.update_wall(grid, options.x, options.y, turn)
    s.close()

elif (options.mode == "hib"):
    listing = glob.glob(options.folder)
    for infile in listing:
        fig = Figure.build_image(infile, options.x, options.y)
        figarray = Figure.build_imarray(fig, options.x, options.y)
Beispiel #5
0
   #s = serial.Serial('/dev/ttyS0', 115200)
   s = serial.Serial(Config.SERIAL_PORT, Config.SERIAL_BAUD_RATE, dsrdtr=True)
   s.open()
   turn = 0
   if not options.wall:
       grid = Bricks.build_grid(options.x, options.y)
       while True:
          brick_list = Bricks.build_bricklist(options.x, options.y, grid)
          Bricks.sendserial(brick_list,s)
          turn = turn + 1
          print "geracao ", turn
          time.sleep(0.05)
          grid = GameOfLife.update(grid, options.x, options.y, turn)
   else:
       print "modo wall"
       grid = Bricks.build_grid_wall(options.x, options.y)
       while True:
          brick_list = Bricks.build_wall_bricklist(options.x, options.y, grid)
          Bricks.sendserial(brick_list,s)
          turn = turn + 1
          print "geracao ", turn
          time.sleep(0.05)
          grid = GameOfLife.update_wall(grid, options.x, options.y, turn)
   s.close()
   
elif (options.mode == "hib"):
   listing = glob.glob(options.folder)
   for infile in listing:       
      fig = Figure.build_image(infile, options.x, options.y)
      figarray = Figure.build_imarray(fig, options.x, options.y)
      brick_list = Bricks.build_bricklist(options.x, options.y, figarray)