Advertisement
Guest User

Mandelbrot

a guest
Oct 28th, 2016
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.81 KB | None | 0 0
  1.  
  2. #!/usr/bin/env python3
  3. grays = {key: "\x1b[48;5;%dm "%(key + 232) for key in range(24)}
  4. def within_mandelbrot(re,im,n):
  5.     z = complex(0)
  6.     c = complex(re,im)
  7.     for i in range(n):
  8.         z=pow(z,2)+c
  9.         if abs(z)>2:
  10.             return i
  11.  
  12.     return i
  13.  
  14.  
  15. def draw(scale, n, x=0, y=0, zoom=1):
  16.  
  17.     for y_ in range(-scale, scale, 1):
  18.         y_ /=float(scale)
  19.         y_ /=zoom
  20.         y_ += y
  21.  
  22.         for x_ in range(-2*scale*2, scale, 1):
  23.             x_ /=float(scale*2)
  24.             x_ /=(zoom)
  25.             x_ += x
  26.             iters = within_mandelbrot(x_, y_, n)/float(n)
  27.             iters = int(iters*24)
  28.             iters = min(23, iters)
  29.             iters = max(0, iters)
  30.             iters = 23-iters
  31.             print(grays[iters], end='')
  32.         print()
  33.  
  34.     print("\033[0m")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement