;;; Scheme Recursive Art Contest Entry ;;; ;;; Please do not include your name or personal info in this file. ;;; ;;; Title: ;;; ;;; Description: ;;; hipster spiral says: ;;; "you looking mad fresh b" ;;; hipster spiral is right. ; Whats Poppin' b! ; Welcome, and get ready for the transcendent spiritual journey that is hipster spiral ; I want you to read this code as if you were a feather adrift in the ocean ; just floating, gliding, drifting from one plane of existence to another ; let the water of life envelope your beautiful illustrious body ; as we prepare for this glorious journey together. ; before we begin I want to make sure you take the necessary precautions before attempting to encounter hipster spiral. ; First take off your glasses. Let them glide from your face, let them cascade like a waterfall of whale tears. ; -- ugh you look so good, you should try contacts. Now I want you to release the lenses from the totally restrictive ; cage that society has put them in. Glasses frames are simply a societal construct meant to oppress the full potential ; of the slightly concave or convex sliver of glass they contain -- release them. Good. ; Now grab the closest low cal - kayle - home squeezed smoothie you can find, your favorite obscure indie ; rock band shirt, and a pair of skinny jeans that we both know you no longer fit in..... ; you are now ready for hipster spiral. ; Lets start by drawing. This function allows one to express themselves and really dig deep into their inner Chakras ; Here I use this function to let the power of hipster spiral flow through me onto the paper. (define (draw) ; These next few lines prepare the body of the page for hipster spiral, ; tenderizing it, moulding it, praising it. (prep) (speed 400) (pensize 100) (go-to 142 -100) ; Here is our first recursive function. Look at it. Appreciate it. ; Tell it your deepest secret. Good. ; It draws the main body of hipster spiral, it is hipster spirals ; essence... hipster spirals being. look at it. marvel at the being of hipster spiral. Good. (define (draw-body i) (if (not (= i 0)) (begin (recursive-three-inputs shape 50 72 5 20 19) (forward 30) (draw-body (- i 1))) )) (draw-body 16) (recursive-three-inputs shape 50 72 5 30 6) (shape 50 72 5) (penup) (go-to 2000 1000) (exitonclick)) ; Our next recursive function. Woah. That was pretty fast. Snuck up on us didn't it? ; Another recursive function just like that. All the sudden. ; Take a second to calm yourself. Take a sip of your vente double coco pumpkin mocha americana. ; Are you at ease? Do you feel like a leaf slowly falling, gliding, raining from ; the tree of thunderous oak tree of life? Good. ; This function recursively makes a shape. Look at it. ; It just chugs away. Happy. Complacent. It doesn't question its existence, ; it doesn't challenge the path of life it walks... be like shape. (define (shape length angle sides) (if (not (= sides 0)) (begin (forward length) (right angle) (shape length angle (- sides 1))) )) ; Last one. Look at that. Life does that sometimes. Speeds by, soars, flies like an eagle gliding on the winds of ; eternity. Woah. That's a lot to take in. Close your eyes, soak it in. Be a sponge. Absorb... Good. ; This function takes in three happy little arguments and applies them recursively to a happy little function. (define (recursive-three-inputs function input1 input2 input3 fd-distance i) (if (not (= i 0)) (begin (function input1 input2 input3) (next-color) (next-fillcolor) (forward fd-distance) (left fd-distance) (recursive-three-inputs function input1 input2 input3 fd-distance (- i 1)) ))) ; Hipster spiral thanks you for taking this journey with me. I hope you found your inner being. Stay woke. ; Please leave this last line alone. You may add additional procedures above ; this line. (draw)