def _run_brushfire(c): """Runs the brushfire""" import time; time.sleep(3) from brushfire import BrushfireExpansion be = BrushfireExpansion(c) be.set_ignition_cells([(0,0)]) while be.step_solution(): pass
def reset_algorithm(self): """Resets the algorithm""" self.costmap_widget.canvas.freeze = True self.costmap[:] = 0.0 Obstacle(3, 3, 3, 3).draw(self.costmap) Obstacle(9, 5, 3, 3).draw(self.costmap) Obstacle(16, 4, 3, 3).draw(self.costmap) self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0] + 0.5), floor(temp[1] + 0.5)) self.be.set_ignition_cells([self.start_coord]) self.costmap_widget.canvas.freeze = False self.costmap_widget.canvas.on_map_update()
class BrushfireAlgorithmWidget(AlgorithmWidget): def __init__(self, parent=None, colorbar=False): self.colorbar = colorbar AlgorithmWidget.__init__(self, "Brushfire Algorithm", parent) self.pack_buttons() def setup_algorithm(self): """Sets up the algorithm""" self.costmap = Costmap2D(DEFAULT_WIDTH, DEFAULT_HEIGHT, resolution=DEFAULT_RESOLUTION) Obstacle(3, 3, 3, 3).draw(self.costmap) Obstacle(9, 5, 3, 3).draw(self.costmap) Obstacle(16, 4, 3, 3).draw(self.costmap) self.costmap_widget = Costmap2DWidget(self.costmap, parent=self, show_goal=False, show_colorbar=self.colorbar) self.costmap_widget.canvas.show_start = True self.costmap_widget.canvas.show_goal = False self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0] + 0.5), floor(temp[1] + 0.5)) self.be.set_ignition_cells([self.start_coord]) def step_solution(self): """Steps the solution""" return self.be.step_solution() def reset_algorithm(self): """Resets the algorithm""" self.costmap_widget.canvas.freeze = True self.costmap[:] = 0.0 Obstacle(3, 3, 3, 3).draw(self.costmap) Obstacle(9, 5, 3, 3).draw(self.costmap) Obstacle(16, 4, 3, 3).draw(self.costmap) self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0] + 0.5), floor(temp[1] + 0.5)) self.be.set_ignition_cells([self.start_coord]) self.costmap_widget.canvas.freeze = False self.costmap_widget.canvas.on_map_update()
def setup_algorithm(self): """Sets up the algorithm""" self.costmap = Costmap2D(DEFAULT_WIDTH, DEFAULT_HEIGHT, resolution=DEFAULT_RESOLUTION) Obstacle(3, 3, 3, 3).draw(self.costmap) Obstacle(9, 5, 3, 3).draw(self.costmap) Obstacle(16, 4, 3, 3).draw(self.costmap) self.costmap_widget = Costmap2DWidget(self.costmap, parent=self, show_goal=False, show_colorbar=self.colorbar) self.costmap_widget.canvas.show_start = True self.costmap_widget.canvas.show_goal = False self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0] + 0.5), floor(temp[1] + 0.5)) self.be.set_ignition_cells([self.start_coord])
class BrushfireAlgorithmWidget(AlgorithmWidget): def __init__(self, parent = None, colorbar = False): self.colorbar = colorbar AlgorithmWidget.__init__(self, "Brushfire Algorithm", parent) self.pack_buttons() def setup_algorithm(self): """Sets up the algorithm""" self.costmap = Costmap2D(DEFAULT_WIDTH, DEFAULT_HEIGHT, resolution=DEFAULT_RESOLUTION) Obstacle(3,3,3,3).draw(self.costmap) Obstacle(9,5,3,3).draw(self.costmap) Obstacle(16,4,3,3).draw(self.costmap) self.costmap_widget = Costmap2DWidget(self.costmap, parent = self, show_goal = False, show_colorbar = self.colorbar) self.costmap_widget.canvas.show_start = True self.costmap_widget.canvas.show_goal = False self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0]+0.5), floor(temp[1]+0.5)) self.be.set_ignition_cells([self.start_coord]) def step_solution(self): """Steps the solution""" return self.be.step_solution() def reset_algorithm(self): """Resets the algorithm""" self.costmap_widget.canvas.freeze = True self.costmap[:] = 0.0 Obstacle(3,3,3,3).draw(self.costmap) Obstacle(9,5,3,3).draw(self.costmap) Obstacle(16,4,3,3).draw(self.costmap) self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0]+0.5), floor(temp[1]+0.5)) self.be.set_ignition_cells([self.start_coord]) self.costmap_widget.canvas.freeze = False self.costmap_widget.canvas.on_map_update()
def reset_algorithm(self): """Resets the algorithm""" self.costmap_widget.canvas.freeze = True self.costmap[:] = 0.0 Obstacle(3,3,3,3).draw(self.costmap) Obstacle(9,5,3,3).draw(self.costmap) Obstacle(16,4,3,3).draw(self.costmap) self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0]+0.5), floor(temp[1]+0.5)) self.be.set_ignition_cells([self.start_coord]) self.costmap_widget.canvas.freeze = False self.costmap_widget.canvas.on_map_update()
def setup_algorithm(self): """Sets up the algorithm""" self.costmap = Costmap2D(DEFAULT_WIDTH, DEFAULT_HEIGHT, resolution=DEFAULT_RESOLUTION) Obstacle(3,3,3,3).draw(self.costmap) Obstacle(9,5,3,3).draw(self.costmap) Obstacle(16,4,3,3).draw(self.costmap) self.costmap_widget = Costmap2DWidget(self.costmap, parent = self, show_goal = False, show_colorbar = self.colorbar) self.costmap_widget.canvas.show_start = True self.costmap_widget.canvas.show_goal = False self.be = BrushfireExpansion(self.costmap) temp = self.costmap_widget.canvas.start_coord self.start_coord = (floor(temp[0]+0.5), floor(temp[1]+0.5)) self.be.set_ignition_cells([self.start_coord])
def __init__(self, costmap): BrushfireExpansion.__init__(self, costmap) self.set_ignition_cells(self.get_boundry_cells())
def solve(self): """Solves the voronoi algorithm""" BrushfireExpansion.solve(self)