gradients get picture examples

This commit is contained in:
Kevin Tew 2011-01-04 13:51:23 -07:00
parent d2f16ee36e
commit e35603988a
2 changed files with 47 additions and 23 deletions

View File

@ -3,7 +3,7 @@
scribble/eval) scribble/eval)
@(define class-eval (make-base-eval)) @(define class-eval (make-base-eval))
@(interaction-eval #:eval class-eval (require racket/class racket/draw)) @(interaction-eval #:eval class-eval (require racket/class racket/draw slideshow/pict))
@defclass/title[linear-gradient% object% ()]{ @defclass/title[linear-gradient% object% ()]{
@ -34,17 +34,29 @@ points in between.
@examples[ @examples[
#:eval class-eval #:eval class-eval
(define no-pen (make-object pen% "BLACK" 1 'transparent))
(define brush-grad (new brush% [gradient
(new linear-gradient% (new linear-gradient%
[x0 0] [y0 100] [x1 300] [y1 100] [x0 300] [y0 250] [x1 500] [y1 50]
[stops [stops
(list (list 0 (make-object color% 0 0 255)) (list (list 0 (make-object color% 255 0 0))
(list 0.5 (make-object color% 0 255 0)) (list 0.5 (make-object color% 0 255 0))
(list 1 (make-object color% 255 0 0)))]) (list 1 (make-object color% 0 0 255)))])]))
(define brush-grad2 (new brush% [gradient
(make-object linear-gradient% (make-object linear-gradient%
0 100 300 100 50 150 250 150
(list (list 0 (make-object color% 0 0 255)) (list (list 0 (make-object color% 255 0 0))
(list 0.5 (make-object color% 0 255 0)) (list 0.5 (make-object color% 0 255 0))
(list 1 (make-object color% 255 0 0)))) (list 1 (make-object color% 0 0 255))))]))
(dc (lambda (dc x y)
(send dc set-pen no-pen)
(send dc set-brush brush-grad2)
(send dc draw-ellipse 50 50 200 200)
(send dc set-brush brush-grad)
(send dc draw-rectangle 300 50 200 200)) 550 300)]
]} ]}

View File

@ -3,7 +3,7 @@
scribble/eval) scribble/eval)
@(define class-eval (make-base-eval)) @(define class-eval (make-base-eval))
@(interaction-eval #:eval class-eval (require racket/class racket/draw)) @(interaction-eval #:eval class-eval (require racket/class racket/draw slideshow/pict))
@defclass/title[radial-gradient% object% ()]{ @defclass/title[radial-gradient% object% ()]{
@ -35,16 +35,27 @@ correspond to circles in between.
@examples[ @examples[
#:eval class-eval #:eval class-eval
(new radial-gradient% (define no-pen (make-object pen% "BLACK" 1 'transparent))
[x0 0] [y0 100] [r0 10] [x1 300] [y1 100] [r1 100] (define brush-grad (new brush% [gradient (new radial-gradient%
[x0 400] [y0 150] [r0 10] [x1 400] [y1 150] [r1 100]
[stops [stops
(list (list 0 (make-object color% 0 0 255)) (list (list 0 (make-object color% 255 0 0))
(list 0.5 (make-object color% 0 255 0)) (list 0.5 (make-object color% 0 255 0))
(list 1 (make-object color% 255 0 0)))]) (list 1 (make-object color% 0 0 255)))])]))
(define brush-grad2 (new brush% [gradient
(make-object radial-gradient% 150 150 0 150 150 100 (make-object radial-gradient% 150 150 0 150 150 100
(list (list 0 (make-object color% 0 0 255)) (list (list 0 (make-object color% 0 0 255))
(list 0.5 (make-object color% 0 255 0)) (list 0.5 (make-object color% 0 255 0))
(list 1 (make-object color% 255 0 0)))) (list 1 (make-object color% 255 0 0))))]))
(dc (lambda (dc x y)
(send dc set-pen no-pen)
(send dc set-brush brush-grad2)
(send dc draw-ellipse 50 50 200 200)
(send dc set-brush brush-grad)
(send dc draw-rectangle 300 50 200 200)) 550 300)
]} ]}
@defmethod[(get-circles) @defmethod[(get-circles)
@ -62,4 +73,5 @@ Returns the gradient's list of color stops.
}} }}
@(close-eval class-eval) @(close-eval class-eval)