egutierrez
a8e153b73f
feat(core): add bezier_editor — visual cubic Bezier curve editor
...
ImGui canvas with 4 draggable control points (p0/p3 locked at (0,0)/(1,1)
by default for use as easing curves). Pure evaluation via De Casteljau
(bezier_point) plus sampling-based y(x) lookup (bezier_eval).
Render uses fn_tokens for visual coherence: bg, border, primary curve,
text_dim diagonal reference, text_muted handle tangents.
p1.x and p2.x clamped to [0,1] to keep the curve usable as easing; Y
values are free to allow deliberate overshoot.
2026-04-25 21:50:29 +02:00
..
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-25 21:50:29 +02:00
2026-04-25 21:50:29 +02:00
2026-04-25 21:50:29 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-25 21:00:38 +02:00
2026-04-25 21:00:38 +02:00
2026-04-25 21:00:38 +02:00
2026-04-06 23:46:36 +02:00
2026-04-06 23:46:36 +02:00
2026-04-25 21:14:15 +02:00
2026-04-24 21:31:00 +02:00
2026-04-08 01:17:44 +02:00
2026-04-24 21:31:00 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:25 +02:00
2026-04-25 21:25:25 +02:00
2026-04-25 21:25:25 +02:00
2026-04-25 21:25:25 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-24 14:52:09 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-25 21:25:51 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:00:31 +02:00
2026-04-25 21:00:31 +02:00
2026-04-25 21:00:31 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:14:15 +02:00
2026-04-25 21:14:15 +02:00
2026-04-25 21:14:15 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-08 00:10:18 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:25:39 +02:00
2026-04-25 21:50:21 +02:00
2026-04-25 21:50:21 +02:00
2026-04-25 21:50:21 +02:00