Mercurial > hg > jslab
diff src/scheme/color.scm @ 0:bf79fb79ee13
Initial Mercurial check in.
author | samer |
---|---|
date | Tue, 17 Jan 2012 17:50:20 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/scheme/color.scm Tue Jan 17 17:50:20 2012 +0000 @@ -0,0 +1,47 @@ +(import "java.awt.Color") + +;;; create a colormap of linear ramps +(define (colormap n c0 . pairs) + (define cramp (ColorRamp. n)) + (define (gradto pairs) + (if (not (null? pairs)) + (begin + (.gradientTo cramp (car pairs) (cadr pairs)) + (gradto (cddr pairs))))) + (.set cramp 0 c0) + (gradto pairs) + (.getColorModel cramp)) + +(define (grey) ImageSourceBase.GREY$) +(put "colormaps.grey" (grey)) +;(put "colormaps.green" (green)) + +(define (green) + (colormap 256 + Color.black$ + 64 (Color. 0 80 0) + 128 (Color. 40 160 40) + 196 (Color. 120 220 120) + 255 (Color. 200 255 200))) + +(define (redgreen) + (colormap 256 + (Color. 255 140 140) + 64 (Color. 200 40 40) + 128 Color.black$ + 196 (Color. 40 200 40) + 255 (Color. 140 255 140))) + +(define (hot) + (colormap 256 + (Color. 160 180 255) + 128 Color.black$ + 196 (Color. 200 80 0) + 255 (Color. 255 200 60))) + +(define (middle-map middle) + (colormap 256 Color.black$ 128 middle 255 Color.white$)) + +;these are middle maps +;(put "spectrum.trace.colormap" (cmap (Color. 180 100 40))) +;(put "colormap" (middle-map (Color. 210 40 40)))