def gen_map(self): # read base code f = open("asp/sample-gen.lp", "r") generator_asp = f.read() f.close() # generate mapsize code mapsize_asp = asp_map_size(10) # generate roomentry_asp = asp_room_entry(self.tmedit.tilemapwidget.tilemap, "qwe", 3) # call clingo process print clingo_spawn( mapsize_asp, roomentry_asp, generator_asp )
def generate(self): try: print(int(self.mapsizetext.get("1.0", END))) tree = self.parent.gc.tree if len(tree.get_children()) == 0: raise NoTreeChildrenException code = asp_map_size(int(self.mapsizetext.get("1.0", END))) for c in tree.get_children(): cdata = tree.set(c) tm = Tilemap(1,1) f = open(cdata['filepath'], 'r') tm.tilemap = json.load(f) f.close() code = code + asp_room_entry(tm, cdata['roomname'], cdata['numrooms']) f = open("asp/sample-gen.lp", "r") generator_asp = f.read() f.close() code = code + generator_asp self.write_to_txt(self.gentxt, code) self.write_to_txt(self.solvetxt, clingo_spawn(code)) except ValueError: self.log("invalid map size") except NoTreeChildrenException: self.log("no rooms to use")