![]() | ![]() | ![]() | Cadena de Papus |
Una aplicación de las Figuras Scheme de DR. GEO consiste en la reproducción de una figura cuando sólo conocemos sus características analíticas.
Nos proponemos desarrollar un ejemplo famoso: "La Cadena de Papus".
(new-figure "Pappo") (define (circle n) (let*( (r (Numeric "" free 0 0 (/ 15 ( + 6 (* n n ))))) (c (Point "" free (* 5 (/ 15 ( + 6 (* n n )))) (* 2 (* n (/ 15 ( + 6 (* n n ))))))) (p (Circle "" center-radius c r ))) (send r masked) (if (> n 0) (circle (- n 1))))) (circle 8) (lets Point "A" free 5 0) (lets Point "O" free 0 0) (lets Point "B" free 15 0) (lets Point "M" middle-2pts B O) (lets Circle "" 2points M O) (lets Circle "" 2points A O) (lets Line "" 2points A O)
El código de la figura es relativamente intuitivo y no necesita mayor comentario.
Un ejercicio no trivial, que dejamos al lector, consiste en determinar una construcción con regla y compás que conduzca a una implementación iterativa. (la implementación dada es recursiva).
![]() | ![]() | ![]() | Cadena de Papus |