(define create-drawing (let ((iriscolors (list color.navy-blue color.blue color.light-blue color.medium-grey color.bakers-chocolate color.brown color.sienna color.hunter-green color.medium-forest-green color.pale-green color.red)) (brushes (list "Circle (01)" "Circle (03)" "Circle (05)" "Circle (07)" "Circle (09)"))) (lambda (filename val1 val2 val3) (let* ((eye-height 80) (eye-width 160) (iriscolor (list-ref iriscolors val1)) (iris-diameter 80) (lash-brush (list-ref brushes (modulo val3 5))) (pupil-diameter (* iris-diameter (+ 0.05 (/ val2 10)))) (pupil-left (- 99 (* 40 (/ val2 10)))) (pupil-top (- 99 (* 40 (/ val2 10)))) (destination (open-output-file filename))) (if (not (output-port? destination)) (throw "create-drawing: Could not open output file" filename)) ; Write the sclera ("that white part" for non-bio majors). (empty-ellipse.write destination color.black "Circle (03)" 20 60 eye-width eye-height) ; Write the iris (filled-circle.write destination iriscolor 60 60 iris-diameter) ; Draw the pupil (filled-circle.write destination color.black pupil-left pupil-top pupil-diameter) ; Draw the lashes (line.write destination color.black lash-brush 25 85 25 65) (line.write destination color.black lash-brush 50 69 50 49) (line.write destination color.black lash-brush 75 62 75 42) (line.write destination color.black lash-brush 100 60 100 40) (line.write destination color.black lash-brush 125 62 125 42) (line.write destination color.black lash-brush 150 69 150 49) (line.write destination color.black lash-brush 175 85 175 65) (close-output-port destination) '"Ira is watching you."))))