render.py
author Eugen Sawin <sawine@me73.com>
Thu, 30 Dec 2010 18:31:19 +0100
changeset 7 95ea605276a3
permissions -rw-r--r--
Moved cau to cau.
sawine@2
     1
import Tkinter as tk
sawine@2
     2
sawine@2
     3
class Render(object):
sawine@2
     4
	def __init__(self, title, width, height):
sawine@2
     5
		self.title = title		
sawine@2
     6
		self.width = width
sawine@2
     7
		self.height = height
sawine@2
     8
		self.root = tk.Tk(className=title, sync=1)
sawine@2
     9
		self.canvas = tk.Canvas(width=self.width, height=self.height, bg="black")
sawine@2
    10
		self.canvas.pack(expand=tk.YES, fill=tk.BOTH)
sawine@2
    11
	def render(self, grid):
sawine@2
    12
		offset = (self.width / 2, self.height / 2)
sawine@2
    13
		size = 1
sawine@2
    14
		cell_ids = []
sawine@2
    15
		for pos in grid.cells.iterkeys():
sawine@2
    16
			x = pos[0] + offset[0]
sawine@2
    17
			y = pos[1] + offset[1]
sawine@2
    18
			cell_id = self.canvas.create_rectangle(x, y, x+size, y+size, 
sawine@2
    19
					fill="yellow", width=0)
sawine@2
    20
			cell_ids.append(cell_id)
sawine@2
    21
		self.root.update()
sawine@2
    22
		for cell_id in cell_ids:
sawine@2
    23
			self.canvas.delete(cell_id)
sawine@2
    24
sawine@2
    25
import sys
sawine@2
    26
import time
sawine@2
    27
import cellpimat
sawine@2
    28
sawine@2
    29
def main():
sawine@2
    30
	filename = sys.argv[1]
sawine@2
    31
	print "rendering ", filename	
sawine@2
    32
	render = Render("hope", 800, 800)
sawine@2
    33
	while True:
sawine@2
    34
		grid = cellpimat.loadGrid(filename)
sawine@2
    35
		render.render(grid)
sawine@2
    36
		time.sleep(1)
sawine@2
    37
sawine@2
    38
if __name__ == "__main__":
sawine@2
    39
	main()