sawine@3: import ConfigParser sawine@3: from caugrid import Grid sawine@3: sawine@3: meta_section = "meta" sawine@3: data_section = "cells" sawine@3: sawine@3: def dumpGrid(grid, filename): sawine@3: config = ConfigParser.RawConfigParser() sawine@3: sawine@3: config.add_section(meta_section) sawine@3: config.set(meta_section, 'min x', grid.minx) sawine@3: config.set(meta_section, 'max x', grid.maxx) sawine@3: config.set(meta_section, 'min y', grid.miny) sawine@3: config.set(meta_section, 'max y', grid.maxy) sawine@3: config.set(meta_section, 'cell no', len(grid)) sawine@3: sawine@3: config.add_section(data_section) sawine@3: config.set(data_section, "cells", ";".join([str(pos) for pos in grid.cells.iterkeys()])) sawine@3: sawine@3: with open(filename, 'wb') as configfile: sawine@3: config.write(configfile) sawine@3: sawine@3: def loadGrid(filename): sawine@3: config = ConfigParser.RawConfigParser() sawine@3: config.read(filename) sawine@3: sawine@3: grid = Grid() sawine@3: grid.minx = config.getint(meta_section, "min x") sawine@3: grid.maxx = config.getint(meta_section, "max x") sawine@3: grid.miny = config.getint(meta_section, "min y") sawine@3: grid.maxy = config.getint(meta_section, "max y") sawine@3: sawine@3: cells = config.get(data_section, "cells") sawine@3: for cell in cells.split(";"): sawine@3: cell = [int(cell.strip("(),")) for cell in cell.split()] sawine@3: grid.cells[(cell[0], cell[1])] = 1 sawine@3: return grid