white, black = (255, 255, 255), (0, 0, 0)
ray_mask.fill(black)
- for shape in self.body.shapes:
- if shape is self.fitting:
- continue
- pygame_poly = [
- pymunk.pygame_util.to_pygame(v, surface) for v in
- shape.get_vertices()]
+ for pygame_poly in self.ray_manager.pygame_polys(surface):
pygame.draw.polygon(ray_mask, white, pygame_poly, 0)
pygame.draw.aalines(ray_mask, white, True, pygame_poly, 1)
def polys(self):
return [rp.poly(self._body, self._ray_filter) for rp in self._rays]
+ def pygame_polys(self, surface):
+ return [rp.pygame_poly(surface) for rp in self._rays]
+
class RayPoly(object):
def __init__(self, start, end, vertices):
shape = pymunk.Poly(body, self.vertices)
shape.filter = filter
return shape
+
+ def pygame_poly(self, surface):
+ return [
+ pymunk.pygame_util.to_pygame(v, surface)
+ for v in self.vertices
+ ]