Advertisement
mikhail_dvorkin

SVG generation + recursion

Apr 10th, 2020
498
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.75 KB | None | 0 0
  1. import random
  2.  
  3. def rand_color():
  4.     return hex(random.randrange(16, 256))[2:]
  5.  
  6. def draw_something(f, x, y, r, n):
  7.     if n == 0:
  8.         return
  9.     color = '#' + rand_color() + rand_color() + rand_color()
  10.     for dx in (-1, 1):
  11.         for dy in (-1, 1):
  12.             draw_something(f, x + dx * r, y + dy * r, r / 2.5, n - 1)
  13.     print('<circle cx="' + str(x) + 'px" cy="' + str(y) + 'px" r="' + str(r) + 'px" fill="' + color + '"/>', file=f)
  14.  
  15. f = open("generated.svg", "w")
  16. print("<!-- Generated -->", file=f)
  17. #os.system("generated.svg")
  18. hei = 400
  19. wid = 400
  20. print('<svg xmlns="http://www.w3.org/2000/svg" height="' + str(hei) + 'px" width="' + str(wid) + 'px">', file=f)
  21. draw_something(f, 200, 200, 104, 5)
  22. print('</svg>', file=f)
  23. f.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement