- self.size, self.offset, self.center = \
- self.geometry_class.define_segment(None, source_center, radius)
- self.geometry = self.geometry_class(self.size)
+ example_map = get_map(YX(0, 0))
+ self.source_geometry = example_map.geometry
+ size, self.offset, self.center = \
+ self.source_geometry.define_segment(source_center, radius)
+ self.geometry = self.source_geometry.__class__(size)
+ for yx in self:
+ big_yx, _ = self.source_yxyx(yx)
+ get_map(big_yx)
+ self.source_map_segment = ''
+ obstacles = {}
+ for yxyx in [t.position for t in things if t.blocking]:
+ if yxyx == source_center:
+ continue
+ if yxyx[0] not in obstacles:
+ obstacles[yxyx[0]] = []
+ obstacles[yxyx[0]] += [yxyx[1]]
+ for yx in self:
+ big_yx, little_yx = self.source_yxyx(yx)
+ if big_yx in obstacles and little_yx in obstacles[big_yx]:
+ self.source_map_segment += 'X'
+ else:
+ self.source_map_segment += source_maps[big_yx][little_yx]