;;; Scheme Recursive Art Contest Entry ;;; ;;; Please do not include your name or personal info in this file. ;;; ;;; Title: ;;; ;;; Description: ;;; (define (draw) ; YOUR CODE HERE (bgcolor "#2B1A1F") (define sidelength 320) (define fineness 16) (define interval_num (/ sidelength fineness)) (color "#7470AC") ;(define color (list "787387" "7470AC" "7A5B90" "EF7332" "FEC012")) (pendown) (hideturtle) (speed 10) (forward sidelength) (setposition 0 0) (backward sidelength) (setposition 0 0) (right 90) (forward sidelength) (setposition 0 0) (left 180) (forward sidelength) (right 90) (penup) (define (north_draw start iter count ) (if (zero? iter) (begin (penup) (setheading 0) (setposition 0 0)) (begin (setposition 0 start) (pendown) (setposition count 0) (penup) (north_draw (- start fineness) (- iter 1) (+ count fineness))) ) ) (define (west_draw start iter count) (if (zero? iter) (begin (penup) (setheading 0) (setposition 0 0)) (begin (setposition start 0) (pendown) (setposition 0 count) (penup) (west_draw (- start fineness) (- iter 1) (- count fineness))) ) ) (define (south_draw start iter count) (if (zero? iter) (begin (penup) (setheading 0) (setposition 0 0)) (begin (setposition 0 start) (pendown) (setposition count 0) (penup) (south_draw (+ start fineness) (- iter 1) (- count fineness))) ) ) (define (east_draw start iter count) (if (zero? iter) (begin (penup) (setheading 0) (setposition 0 0)) (begin (setposition start 0) (pendown) (setposition 0 count) (penup) (east_draw (+ start fineness) (- iter 1) (+ count fineness))) ) ) (north_draw sidelength interval_num fineness) (west_draw sidelength interval_num (- 0 fineness)) (south_draw (- 0 sidelength) interval_num (- 0 fineness)) (east_draw (- 0 sidelength) interval_num fineness) (color "#CD6851") (define sidelength 200) (define fineness 10) (define interval_num (/ sidelength fineness)) (north_draw sidelength interval_num fineness) (west_draw sidelength interval_num (- 0 fineness)) (south_draw (- 0 sidelength) interval_num (- 0 fineness)) (east_draw (- 0 sidelength) interval_num fineness) (define sidelength 100) (define fineness 5) (define interval_num (/ sidelength fineness)) (color "#EF7332") (north_draw sidelength interval_num fineness) (west_draw sidelength interval_num (- 0 fineness)) (south_draw (- 0 sidelength) interval_num (- 0 fineness)) (east_draw (- 0 sidelength) interval_num fineness) (exitonclick)) ; Please leave this last line alone. You may add additional procedures above ; this line. (draw)