#lang racket (require "hw2.rkt") (define tree-prg '( (define STYLE1 "stroke:black;stroke-width:2;opacity:0.9") (define STYLE2 "stroke:green;stroke-width:3;opacity:0.9") (define FACTOR 0.7) (define PI 3.14) (define (draw x1 y1 x2 y2 len angle) (if (> len 30) (line x1 y1 x2 y2 STYLE1) (line x1 y1 x2 y2 STYLE2) ) (when (> len 20) (recur-tree x2 y2 (floor (* len FACTOR)) angle) (recur-tree x2 y2 (floor (* len FACTOR)) (+ angle 0.3)) (recur-tree x2 y2 (floor (* len FACTOR)) (- angle 0.6)) ) ) (define (recur-tree x1 y1 len angle) (draw x1 y1 (+ x1 (* len (cos angle))) (+ y1 (* len (sin angle))) len angle) ) )) (display (execute 400 300 tree-prg '(recur-tree 200 300 100 (* PI 1.5))))