Advertisement
Guest User

Mandelbrot

a guest
Aug 30th, 2021
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 0.83 KB | None | 0 0
  1. (scl 5)
  2.  
  3. (de dist (X)
  4.    (sqrt (*/ (car X) (car X) 1.) (*/ (cdr X) (cdr X) 1.)))
  5.  
  6. (de rlerp (n a b x y)
  7.    (+ x (*/ (*/ (- n a) 1.0 (- b a)) (- y x) 1.0 ) ))
  8.  
  9. (de imgAdd (X Y)
  10.    (cons (+ (car X) (car Y)) (+ (cdr X) (cdr Y))))
  11.  
  12. (de imgSq (X)
  13.    (let (a (car X) b (cdr X))
  14.       (cons (- (*/ a a 1.0) (*/ b b 1.0))  (/ (* 2. a b) 1.0 1.0) ) ))
  15.  
  16. (setq colors (apply circ (chop " 8$#%&/")))
  17.  
  18. (for j 45
  19.    (for i 120
  20.       (let c (cons (rlerp (* i 1.) 0 120. -2. 1.) (rlerp (* j 1.) 0 45. -1.2 1.2))
  21.          (let z (0.0 . 0.0)
  22.             (let it (for it 100
  23.                      (setq z (imgAdd (imgSq z) c))
  24.                      (T (or (>= it 100) (> (abs (dist z)) 2.0)) it))
  25.                   (if (= it 100)
  26.                      (prin " ")
  27.                      (prin  (car (nth colors it)) ))))))
  28.          (prinl))
  29.  
  30. (bye)
  31.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement