これは、いくつかの点が長方形の内側にあるかどうかをチェックし、実行されるたびにプログラムの速度が大幅に低下します。より効率的にするためにどのように変更できますか?
def draw_grid(self, box):
for element in self.map_layout.all_map_objects:
if element not in self.build_grid and box.area.collidepoint(element.checkpoint):
self.build_grid.append(element)
elif not box.area.collidepoint(element.checkpoint):
if element in self.build_grid:
self.build_grid.remove(element)