caumarshal.py
author Eugen Sawin <sawine@me73.com>
Thu, 30 Dec 2010 15:56:07 +0100
changeset 6 cac4ae0f22f4
permissions -rw-r--r--
Best Pi approximation so far.
     1 import ConfigParser
     2 from caugrid import Grid
     3 
     4 meta_section = "meta"
     5 data_section = "cells"
     6 
     7 def dumpGrid(grid, filename):
     8 	config = ConfigParser.RawConfigParser()
     9 
    10 	config.add_section(meta_section)
    11 	config.set(meta_section, 'min x', grid.minx)
    12 	config.set(meta_section, 'max x', grid.maxx)
    13 	config.set(meta_section, 'min y', grid.miny)
    14 	config.set(meta_section, 'max y', grid.maxy)
    15 	config.set(meta_section, 'cell no', len(grid))	
    16 	
    17 	config.add_section(data_section)
    18 	config.set(data_section, "cells", ";".join([str(pos) for pos in grid.cells.iterkeys()]))
    19 
    20 	with open(filename, 'wb') as configfile:
    21 		config.write(configfile)
    22 
    23 def loadGrid(filename):
    24 	config = ConfigParser.RawConfigParser()
    25 	config.read(filename)
    26 
    27 	grid = Grid()
    28 	grid.minx = config.getint(meta_section, "min x")
    29 	grid.maxx = config.getint(meta_section, "max x")
    30 	grid.miny = config.getint(meta_section, "min y")
    31 	grid.maxy = config.getint(meta_section, "max y")
    32 
    33 	cells = config.get(data_section, "cells")
    34 	for cell in cells.split(";"):
    35 		cell = [int(cell.strip("(),")) for cell in cell.split()]
    36 		grid.cells[(cell[0], cell[1])] = 1
    37 	return grid