Guest User

Untitled

a guest
Nov 17th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. (defn vec-abs
  2. [[x y]]
  3. (+ (* x x)
  4. (* y y)))
  5.  
  6. (defn vec-add
  7. [x y]
  8. (map + x y))
  9.  
  10. (defn vec-sq
  11. [[x y]]
  12. (vector (- (* x x)
  13. (* y y))
  14. (* 2 x y)))
  15.  
  16. (defn mandel
  17. [coord max-iterations]
  18. (count
  19. (filter #(> (vec-abs %) 4)
  20. (take max-iterations
  21. (iterate #(vec (vec-add (vec-sq %)
  22. coord))
  23. [0 0])))))
  24.  
  25. (defn build-square
  26. [x]
  27. (map #(vector (int (/ % x)) (mod % x))
  28. (range (* x x))))
  29.  
  30. (defn mand-set
  31. [size]
  32. (map #(cond (= 0 (mandel % 250)) "#"
  33. :else " ")
  34. (map (fn [x]
  35. (map #(/ (- %
  36. (/ size 2.0))
  37. (/ size 3.0))
  38. x))
  39. (build-square size))))
  40.  
  41.  
  42. (defn print-square
  43. [size square]
  44. (pprint (map #(apply str
  45. (apply vector %))
  46. (partition size square))))
Add Comment
Please, Sign In to add comment