Exemple #1
0
	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")
Exemple #2
0
    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 )