#lang scheme/gui

;;;;;;;;;;;
(define brocha-roja
  (make-object brush%
    "red"
    'solid))

(define lapiz-azul
  (make-object pen%
    "blue"
    5
    'solid))
;;;;;;;;;;;

;;;; ejemplos con una ventana y tres lienzos
(define ventana3
  (make-object frame% 
    "Coordenadas en x = 500, y = 200" 
    #f 
    450 350 
    500 200))

(define lienzo1
  (instantiate canvas% 
    (ventana3) 
    (style '(border)) ))

(define dc1 (send lienzo1 get-dc))

(define lienzo2
  (instantiate canvas% 
    (ventana3) 
    (style '(border)) ))

(define dc2 (send lienzo2 get-dc))

(define lienzo3
  (instantiate canvas% 
    (ventana3) 
    (style '(border)) ))

(define dc3 (send lienzo3 get-dc))

(send ventana3 show #t)

(sleep/yield 1)

(send dc1 set-brush brocha-roja)
(send dc1 draw-rectangle 10 10 100 80)

(sleep/yield 1)

(send dc2 set-pen lapiz-azul)
(send dc2 draw-line 0 50 280 50)

(sleep/yield 1)
(define x 10)
(define y 10)
(define ancho 100)
(define alto 50)
(define 45grados (/ 3.1416 2))
;; dibuja un arco desde
(define ini-angulo 0); las 3 en el reloj
;; hasta 
(define fin-angulo 45grados); las 12 en el reloj
;; en sentido contrario a las manecillas del reloj

(send dc3 set-brush brocha-roja)
(send dc3 draw-arc x y ancho alto ini-angulo (* 2 45grados))
