#lang frtime (require frtime/animation) (define radius (new-cell 20)) (define pos1 (rec pos (until (make-posn 200 200) (inf-delay (let ([brnch (posn+ pos (posn* (normalize (posn- mouse-pos pos)) (- (posn-diff pos mouse-pos) (sub1 radius))))]) (if (> (posn-diff pos mouse-pos) radius) brnch pos)))))) (define pos2 (rec pos (until (make-posn 100 100) (inf-delay (let ([brnch (posn+ pos (posn* (normalize (posn- pos1 pos)) (- (posn-diff pos pos1) (add1 (* 2 radius)))))]) (if (< (posn-diff pos pos1) (* 2 radius)) brnch pos)))))) (display-shapes (list (make-circle pos1 radius "blue") (make-circle pos2 radius "gray")))