Мне нужно запрограммировать симуляцию как домашнюю работу, но я не могу понять, как.Мне нужна симуляция перкуссии на воде, которая вызывает концентрические круги, мне нужно установить местоположение кругов, частоту и радиус кругов
Я пробовал несколько способов, но даже не один из нихКажется, работает прилично.Я пытался сделать это с Pygame, но, похоже, сильно отстает и не работает правильно.Затем я попытался сделать это с помощью matplotlib, но, поскольку у меня нет такого опыта, я не знаю, как именно это сделать
import pygame
import math
pygame.init()
screen = pygame.display.set_mode([800, 600])
black = (0,0,0)
keep_going = True
white = (255,255,255)
freq = 10
num_circle = 0
radius = 0
while keep_going:
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_going = False
for x in range(100):
radius = radius + 1
num_circle = math.ceil(radius / freq)
screen.fill(white)
radiusMax = num_circle * freq
pace = freq / radiusMax
for y in range(num_circle, 1, -1):
radiusY = int(((pace * (num_circle - y)) + pace) * radiusMax)+radius
pygame.draw.circle(screen, black,(400, 300), radiusY, 1)
pygame.display.update()
pygame.quit()
это то, что я пытаюсь с Pygame, простоне законченная идея, но она все еще не работает так хорошо.
https://www.edumedia -sciences.com / de / media / 645-kreiswellen-wasserwellen
этоэто именно то, что я ищу.Должен ли я сделать это с Pygame или Matplotlib или что-то еще?