Skip to content

Feat: Animation system with view management enhancements#87

Merged
arossti merged 7 commits intomainfrom
Animate
Feb 11, 2026
Merged

Feat: Animation system with view management enhancements#87
arossti merged 7 commits intomainfrom
Animate

Conversation

@arossti
Copy link
Owner

@arossti arossti commented Feb 11, 2026

Summary

  • Complete animation system: camera slerp, cutplane interpolation, preview loops, batch/SMIL export
  • Dual-row animation UI (Camera-only / Camera+Scene) with smooth cutplane transitions
  • Drag-to-reorder saved views with grip handles and manual sort mode
  • HTML reorganization: View Capture moved from Papercut to "View Manager" section
  • Code quality audit: refactored preview duplication, migrated inline styles to CSS

Changes

  • rt-animate.js — New animation module: animateToView() (smoothstep slerp), animateToViewFull() (camera + cutplane interpolation), previewAnimation()/previewAnimationFull() (consolidated via _runPreviewLoop()), exportBatch(), exportAnimation() (SVG+SMIL)
  • rt-viewmanager.jsloadView() with skipCamera option, _setupDragReorder() (HTML5 drag-and-drop), "manual" sort mode, timing popup per view row
  • index.html — Dual-row animation buttons, View Capture moved into View Manager section, Camera renamed to View Manager
  • art.css — Drag reorder styles (.view-drag-handle, .view-row.dragging, .view-row.drag-over), animation icon styles (.anim-icon-stop, .anim-icon-play)
  • Geometry Documents/ — Animations.md workplan, AUDIT-2026-02-10.md audit report, Janus-Inversion v8/v9 LaTeX

Audit Results (2026-02-10)

  • Prettier: ✅ 0 violations (9 auto-fixed)
  • ESLint: ✅ 0 errors, 0 warnings
  • RT-Purity: ✅ 0 classical trig in audited files

🤖 Generated with Claude Code

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 andy@openbuilding.ca

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
…-Review

Version-stamped the original as v8 alongside the newer v9 source.

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
…ane interpolation

Phase 6: Two button rows — "Camera" for camera-only animation,
"Camera + Scene" for full state restore with smooth cutplane transitions.
- loadView() accepts { skipCamera: true } to restore non-camera state only
- animateToViewFull() slerps camera + interpolates cutplane value per frame
- previewAnimationFull() loops with full scene state at each keyframe
- onTick callback in animateToView() enables per-frame scene updates

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
… View Manager

HTML-only reorganization — View Capture, Saved Views, and Animation
buttons moved from Papercut section into the Camera section (now
renamed "View Manager"). Papercut retains only cut controls and
sheet size. Docs updated with future refinement notes (bidirectional
cutplane transitions, expandable view list).

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
Add ⠿ drag handles to view rows for HTML5 drag-and-drop reordering.
Dragging switches to manual sort mode; clicking any sort header
re-engages column sorting. Remove max-height scrollbar from views
table so the list expands naturally. All drag styles in art.css.

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
… styles to CSS

Automated fixes:
- Prettier formatting (2 files, 9 violations)

Manual fixes:
- Extracted _stopPreview() + _runPreviewLoop() from duplicate preview functions (-21 lines)
- Consolidated _updatePreviewButton/_updatePreviewFullButton into _updatePlayStopBtn()
- Moved play/stop icon inline styles to .anim-icon-stop/.anim-icon-play in art.css

Audit report: Geometry Documents/AUDIT-2026-02-10.md

🤖 Co-Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Andy🤦‍♂️ & Claude🤖 <andy@openbuilding.ca>
@github-actions
Copy link

🤖 Claude Code Review

No issues found.

The diff shows only documentation files being added/modified and one LaTeX file being renamed. There are no code files in the diff that could contain debug code, commented-out code, code duplication, large functions, or unused variables.


ℹ️ About this review

This automated review checks for:

  • Debug statements (console.log)
  • Commented-out code
  • Code duplication
  • Large functions (>50 lines)
  • Unused variables

Human review required - these are suggestions only.
Diff size: 101960 bytes

@arossti arossti self-assigned this Feb 11, 2026
@arossti arossti merged commit d4c11cd into main Feb 11, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant