Pymunk создает след

#python #pymunk

Вопрос:

Я хочу создать след каждого мяча, который я создаю, но я не могу придумать ничего, что помогло бы мне это сделать

 def create_balls(space,x,y):
body = pymunk.Body()
body.position = (x,y)
shape = pymunk.Circle(body, 10)
shape.density = 1       
shape.elasticity = 1
space.add(body, shape)

return shape
def draw_balls(balls):
 for ball in balls:
    pos_x = int(ball.body.position.x)
    pos_y = int(ball.body.position.y)
    pygame.draw.circle(display,(red,green,blue),(pos_x,pos_y),10)
 

Ответ №1:

Вам нужно следить за старыми местами расположения шаров. Так, например, каждые 1 секунду вы добавляете положение шара в список (если список слишком длинный, скажем, выше 10, вы удаляете первый элемент). Затем вы рисуете шар на каждой позиции в списке.

В качестве альтернативы вы можете нарисовать шары на поверхности, которую вы никогда не очистите. (А затем переместите эту поверхность на поверхность экрана) Тогда следы каждого шара останутся навсегда.