sawine@2: import Tkinter as tk sawine@2: sawine@2: class Render(object): sawine@2: def __init__(self, title, width, height): sawine@2: self.title = title sawine@2: self.width = width sawine@2: self.height = height sawine@2: self.root = tk.Tk(className=title, sync=1) sawine@2: self.canvas = tk.Canvas(width=self.width, height=self.height, bg="black") sawine@2: self.canvas.pack(expand=tk.YES, fill=tk.BOTH) sawine@2: def render(self, grid): sawine@2: offset = (self.width / 2, self.height / 2) sawine@2: size = 1 sawine@2: cell_ids = [] sawine@2: for pos in grid.cells.iterkeys(): sawine@2: x = pos[0] + offset[0] sawine@2: y = pos[1] + offset[1] sawine@2: cell_id = self.canvas.create_rectangle(x, y, x+size, y+size, sawine@2: fill="yellow", width=0) sawine@2: cell_ids.append(cell_id) sawine@2: self.root.update() sawine@2: for cell_id in cell_ids: sawine@2: self.canvas.delete(cell_id) sawine@2: sawine@2: import sys sawine@2: import time sawine@2: import cellpimat sawine@2: sawine@2: def main(): sawine@2: filename = sys.argv[1] sawine@2: print "rendering ", filename sawine@2: render = Render("hope", 800, 800) sawine@2: while True: sawine@2: grid = cellpimat.loadGrid(filename) sawine@2: render.render(grid) sawine@2: time.sleep(1) sawine@2: sawine@2: if __name__ == "__main__": sawine@2: main()