mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-30 13:08:07 -06:00
Engine (mask.rs, tests in tests_timeline.rs incl. render + undo/redo): mask.new, mask.addVertex, mask.setVertex, mask.setClosed (Layer > Mask and Shape Path > Closed), mask.selectVertices, mask.moveVertices (merged drags), mask.deleteVertices (Delete with vertices selected), mask.remove / mask.removeAll (Layer > Mask). Edits of an animated Mask Path key the current time. Viewer: Pen tool on the selected layer - click = corner vertex, drag = Bezier vertex, click the first vertex to close, Esc/Enter or another tool ends the path; rubber band to the pointer. Selection tool: click/shift-click mask vertices, drag selected vertices, drag tangent handles (symmetric; Alt breaks). Vertices register automation ids viewer.mask.<uid>.vertex.<i>. Mode/inverted/feather/opacity/expansion stay in the timeline mask rows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>