|
| 1 | +(ns clojure2d.extra.overlays-example |
| 2 | + (:require [clojure2d.core :refer :all] |
| 3 | + [clojure2d.extra.overlays :refer :all] |
| 4 | + [metadoc.examples :refer :all] |
| 5 | + [clojure2d.color :as c])) |
| 6 | + |
| 7 | +(defsnippet clojure2d.extra.overlays save-result "Save overlays" |
| 8 | + (let [n (str "images/overlays/" (first opts) ".jpg") |
| 9 | + c (canvas 600 800) |
| 10 | + i (load-image "docs/samurai.jpg")] |
| 11 | + (with-canvas-> c |
| 12 | + (set-color (c/gray 50)) |
| 13 | + (rect 0 0 600 400) |
| 14 | + (set-color (c/gray 205)) |
| 15 | + (rect 0 400 600 400) |
| 16 | + (image i 50 100)) |
| 17 | + (save (apply f c params) (str "docs/" n)) |
| 18 | + (str "../" n))) |
| 19 | + |
| 20 | +(add-examples render-rgb-scanlines |
| 21 | + (example-snippet "Render RGB scanlines" save-result :image render-rgb-scanlines {:scale 1.8})) |
| 22 | + |
| 23 | +(add-examples render-crt-scanlines |
| 24 | + (example-snippet "Render CRT scanlines" save-result :image render-crt-scanlines {:resolution 24.0 :mask-dark 0.7 :mask-light 1.3 :hardscan -8.0})) |
| 25 | + |
| 26 | +(add-examples render-noise |
| 27 | + (example-snippet "Render noise overlay" save-result :image render-noise) |
| 28 | + (example-snippet "Render noise overlay, dark" save-result :image render-noise (noise-overlay 600 800 {:alpha 200}))) |
| 29 | + |
| 30 | +(save (noise-overlay 300 300 {:alpha 200}) "docs/images/overlays/noise.png") |
| 31 | + |
| 32 | +(add-examples noise-overlay |
| 33 | + (example-image "Overlay image" "../images/overlays/noise.png")) |
| 34 | + |
| 35 | +(add-examples spots-overlay |
| 36 | + (example "Generate spots overlay (it's a list of images)" (count (spots-overlay 300 300 {:alpha 80 :intensities [10 100 200]})))) |
| 37 | + |
| 38 | +(add-examples render-spots |
| 39 | + (example-snippet "Render spots overlay" save-result :image render-spots (spots-overlay 600 800 {:alpha 128 :intensities [10 50 100 150 200 250]}))) |
0 commit comments