grid.Grid(): getActiveRegion(); returns connected !default regions
This commit is contained in:
parent
c16bc0d1cf
commit
b6360d18ed
@ -183,6 +183,19 @@ class Grid:
|
||||
else:
|
||||
return list(self.__grid.keys())
|
||||
|
||||
def getActiveRegion(self, start: Coordinate, includeDiagonal: bool = False, ignore: List[Coordinate] = None) \
|
||||
-> List[Coordinate]:
|
||||
if not self.get(start):
|
||||
return []
|
||||
if ignore is None:
|
||||
ignore = []
|
||||
ignore.append(start)
|
||||
for c in self.getNeighboursOf(start, includeDiagonal=includeDiagonal):
|
||||
if c not in ignore:
|
||||
ignore = self.getActiveRegion(c, includeDiagonal, ignore)
|
||||
|
||||
return ignore
|
||||
|
||||
def values(self):
|
||||
return self.__grid.values()
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user