return 'nw (near)' elif n == 3: return 'nw (far)' elif n == 4: return 'sw (near)' elif n == 5: return 'sw (far)' elif n == 6: return 'se (near)' elif n == 7: return 'se (far)' # Testing phase #if (not args.answer): board_x, board_y, board_z, boards = nl3d.read_probfile(input_problem, n_dims) #else: # board_x, board_y, board_z, boards = nl3d.read_ansfile(input_problem, n_dims) x_data = [[] for z in range(board_z)] names = [[] for z in range(board_z)] for z in range(board_z): x_data[z], names[z] = nl3d.gen_dataset_dd(board_x, board_y, board_z, boards, z, n_dims, method, testmode=True) x_test = [[] for z in range(board_z)] for z in range(board_z): x_test[z] = np.array(x_data[z], dtype=np.float32) nn = nnmodel.Model1(model) result = [[] for z in range(board_z)]
idx = 0 for z in range(board_z): print 'LAYER {}'.format(z + 1) for y in range(n_dims_half, board_y + n_dims_half): for x in range(n_dims_half, board_x + n_dims_half): # ビアを赤色で表示 if _pboards is not None and _boards[z][y][x]['type'] == 1 and _pboards[z][y][x]['type'] == 'via': sys.stdout.write('\033[1;31;47m {} \033[0m'.format(nl.int2str(_boards[z][y][x]['data'], 36))) elif _boards[z][y][x]['type'] == 1: sys.stdout.write('\033[1;30;47m {} \033[0m'.format(nl.int2str(_boards[z][y][x]['data'], 36))) else: # 正しい配線形状 fr_color = '30' # 途切れてないセル / 途切れてるセル bg_color = '47' if show_float: if _boards[z][y][x]['float'] != None: bg_color = '43' sys.stdout.write('\033[1;{};{}m{}\033[0m'.format(fr_color, bg_color, shstr[_boards[z][y][x]['shape']])) idx = idx + 1 print '' board_x, board_y, board_z, boards = nl3d.read_ansfile(input_answer, n_dims) pboards = None if problem_file is not None: _, _, _, pboards = nl3d.read_probfile(problem_file, n_dims) show_board(boards, pboards)
n_dims = 3 n_dims_half = n_dims / 2 # 問題を表示する def show_board(_boards): line_num = 0 via_num = 0 for z in range(board_z): print 'LAYER {}'.format(z + 1) for y in range(n_dims_half, board_y + n_dims_half): for x in range(n_dims_half, board_x + n_dims_half): # ビアを赤色で表示 if _boards[z][y][x]['type'] == 'via': via_num += 1 if len(_boards[z][y][x]['data']) == 1: sys.stdout.write('\033[1;31;47m %s \033[0m' % _boards[z][y][x]['data']) else: sys.stdout.write('\033[1;31;47m %s \033[0m' % _boards[z][y][x]['data']) elif _boards[z][y][x]['type'] == 1: line_num += 1 sys.stdout.write('\033[1;30;47m %02d \033[0m' % _boards[z][y][x]['data']) else: sys.stdout.write('\033[1;30;47m \033[0m') sys.stdout.write('\n') return line_num, via_num board_x, board_y, board_z, boards = nl3d.read_probfile(problem_file, n_dims) line_num, via_num = show_board(boards) print '%d X %d X %d' % (board_x, board_y, board_z) print '#line=%d #via=%d' % (line_num / 2, via_num / 2)