def render(self, grid: Grid, **kwargs: Any) -> None: horizontal_wall = "\u2501" vertical_wall = "\u2503" output = self.JUNCTIONS[12] for x in range(grid.columns - 1): output += (horizontal_wall * 3 + self.get_topmost_junction( cast(Cell, grid.cell_at(row=0, column=x)))) output += horizontal_wall * 3 + self.JUNCTIONS[10] + "\n" for row in grid.each_row(): top = vertical_wall bottom = self.get_leftmost_junction(row[0]) for cell in row: body = grid.contents_of(cell) east_boundary = " " if cell.linked_to( cell.east) else vertical_wall top += body + east_boundary south_boundary = " " if cell.linked_to( cell.south) else horizontal_wall * 3 bottom += south_boundary + self.get_south_east_junction(cell) output += top + "\n" output += bottom + "\n" print(output)
def render(self, grid: Grid, **kwargs: Any) -> None: output = "+" + "---+" * grid.columns + "\n" for row in grid.each_row(): top = "|" bottom = "+" for cell in row: # NOTE: Book here creates dummy (-1,-1) cell. Not doing it until needed body = grid.contents_of(cell) east_boundary = " " if cell.linked_to(cell.east) else "|" top += body + east_boundary south_boundary = " " if cell.linked_to(cell.south) else "---" corner = "+" bottom += south_boundary + corner output += top + "\n" output += bottom + "\n" print(output)