smallpond

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.nihaljere.xyz/smallpond
Log | Files | Refs | README | LICENSE

commit b7c697d61b83f419dd0306fe5d2caecea4b07016
parent fc7a373c055ff5b03c37939dd0da8f6ef2c3b6d9
Author: Nihal Jere <nihal@nihaljere.xyz>
Date:   Thu,  3 Nov 2022 21:28:52 -0500

animate beams

Diffstat:
Msmallpond.lua | 8+++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/smallpond.lua b/smallpond.lua @@ -522,7 +522,7 @@ local staff3ify = function(timing, el, staff) inc = 7 end for yoff=first, last, inc do - table.insert(staff3[staff], {kind="quad", x1=x1 - 0.5, y1=y0 + m*(x1 - x0) + yoff, x2=x2, y2=y0 + m*(x2 - x0) + yoff, x3=x2, y3=y0 + m*(x2 - x0) + 5 + yoff, x4=x1 - 0.5, y4=y0 + m*(x1 - x0) + 5 + yoff, time={start=timing, stop=timing+1}}) + table.insert(staff3[staff], {kind="vshear", x1=x1 - 0.5, x2=x2, y1=y0 + m*(x1 - x0) + yoff, x2=x2, y2=y0 + m*(x2 - x0) + yoff, h=5, time={start=el.notes[i-1].time, stop=el.notes[i].time}}) end ::continue:: end @@ -745,7 +745,7 @@ function drawframe(time) endy = math.max(d.y1 + delta*(d.y2 - d.y1), d.y2) end draw_line(d.t, toff + d.x1 - extent.xmin, d.y1 - extent.ymin + extent.yoff, toff + endx - extent.xmin, endy - extent.ymin + extent.yoff) - elseif d.kind == "quad" then + elseif d.kind == "vshear" then local delta = (time - d.time.start) / (d.time.stop - d.time.start) local endx, endy if d.x1 < d.x2 then @@ -758,7 +758,9 @@ function drawframe(time) else endy = math.max(d.y1 + delta*(d.y2 - d.y1), d.y2) end - draw_quad(d.t, toff + d.x1 - extent.xmin, d.y1 - extent.ymin + extent.yoff, toff + d.x2 - extent.xmin, d.y2 - extent.ymin + extent.yoff, toff + d.x3 - extent.xmin, d.y3 - extent.ymin + extent.yoff, toff + d.x4 - extent.xmin, d.y4 - extent.ymin + extent.yoff) + draw_quad(toff + d.x1 - extent.xmin, d.y1 - extent.ymin + extent.yoff, toff + endx - extent.xmin, endy - extent.ymin + extent.yoff, toff + endx - extent.xmin, endy + 5 - extent.ymin + extent.yoff, toff + d.x1 - extent.xmin, d.y1 + 5 - extent.ymin + extent.yoff) + elseif d.kind == "quad" then + draw_quad(toff + d.x1 - extent.xmin, d.y1 - extent.ymin + extent.yoff, toff + d.x2 - extent.xmin, d.y2 - extent.ymin + extent.yoff, toff + d.x3 - extent.xmin, d.y3 - extent.ymin + extent.yoff, toff + d.x4 - extent.xmin, d.y4 - extent.ymin + extent.yoff) end end