From 60a587fc326af6d07140985f2b5eeeb9a4b9a871 Mon Sep 17 00:00:00 2001 From: Charles Comstock Date: Tue, 13 Feb 2024 20:11:50 -0600 Subject: [PATCH] move stroke-path into canvas --- src/shimmers/common/ui/canvas.cljs | 8 ++++++++ src/shimmers/sketches/carrier_wave.cljs | 13 +++---------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/shimmers/common/ui/canvas.cljs b/src/shimmers/common/ui/canvas.cljs index 240d424a1..237ede04b 100644 --- a/src/shimmers/common/ui/canvas.cljs +++ b/src/shimmers/common/ui/canvas.cljs @@ -144,6 +144,14 @@ ([ctx] (.stroke ctx) ctx) ([ctx path] (.stroke ctx path) ctx)) +(defn stroke-path [ctx points] + (.beginPath ctx) + (move-to ctx (first points)) + (doseq [p (rest points)] + (line-to ctx p)) + (stroke ctx) + ctx) + (defn fill ([ctx] (.fill ctx) ctx) ([ctx fill-rule] (.fill ctx fill-rule) ctx) diff --git a/src/shimmers/sketches/carrier_wave.cljs b/src/shimmers/sketches/carrier_wave.cljs index 13a8951fd..14ac53e92 100644 --- a/src/shimmers/sketches/carrier_wave.cljs +++ b/src/shimmers/sketches/carrier_wave.cljs @@ -22,22 +22,15 @@ (tm/* radius) (tm/+ center)))) -(defn draw-path [ctx points] - (.beginPath ctx) - (canvas/move-to ctx (first points)) - (doseq [p (rest points)] - (canvas/line-to ctx p)) - (canvas/stroke ctx) - ctx) - (defn draw [ui-state _fs ctx [width height] ms] (let [t (* 0.001 ms) center (gv/vec2 (* 0.5 width) (* 0.5 height)) {:keys [params k]} @ui-state - [a b c d] params] + [a b c d] params + points (generate-points [a b c d (* 1 k)] center (* 0.133 height) (* 0.5 t))] (canvas/line-width ctx 1.0) - (draw-path ctx (generate-points [a b c d (* 1 k)] center (* 0.133 height) (* 0.5 t))) + (canvas/stroke-path ctx points) ctx)) ;; TODO: use fraction controls