Найти в Дзене

import math

from tkinter import *
import random
root=Tk()
root.geometry('1100x800')
canvas=Canvas(root,width=1250,height=800,bg="Black")
canvas.pack()
def fx(x):
  return (x+500)
def fy(y):
  return (300-y)
pi=math.pi

canvas.create_line(fx(-330),fy(0),fx(300),fy(0),fill="red")
canvas.create_line(fx(0),fy(-300),fx(0),fy(300),fill="red")
a=0.005; b=0.3;c=-20

xL=-300;xR=300
x=xL
while x<xR:
  y=a*x**2+b*x+c
  canvas.create_oval(fx(x),fy(y),fx(x),fy(y),outline="yellow",fill="yellow")
  x=x+0.5
x0=50
n=1
while n<20:
  x=xL
  while x<xR:
   y=-a*x**2+2*a*n*x0*x+b*n*x0+c
   canvas.create_oval(fx(x),fy(y),fx(x),fy(y),outline="yellow",fill="yellow")
   x=x+0.5
  n=n+0.6
x0=50
n=1
while n<20:
  x=xL
  while x<xR:
   y=a*x**2+(b-2*a*n*x0)/2*x-b*n*x0/2
   canvas.create_oval(fx(x),fy(y),fx(x),fy(y),outline="cyan",fill="cyan")
   xv=-(b-2*a*n*x0)/2/(2*a)
   yv=(-4*a*b*n*x0/2-((b-2*a*n*x0)/2)**2)/(4*a)
   canvas.create_oval(fx(xv-3),fy(yv-3),fx(xv+3),fy(yv+3),outline="cyan",fill="cyan")
   x=x+0.5
  n=n+0.6
x0=50
n=-10
while n<20:
   xv=-(b-2*a*n*x0)/2/(2*a)
  yv=(-4*a*b*n*x0/2-((b-2*a*n*x0)/2)**2)/(4*a)
  canvas.create_oval(fx(xv-3),fy(yv-3),fx(xv+3),fy(yv+3),outline="cyan",fill="cyan")

  n=n+0.3
x=xL
while x<xR:
  y=-a*x**2-b*x-b**2/(4*a)
  canvas.create_oval(fx(x),fy(y),fx(x),fy(y),outline="yellow",fill="yellow")
  x=x+0.5
1 минута