gravity/Readme.md
2026-01-01 15:13:13 -06:00

1.3 KiB

Gravity Simulator

Runs in a browser. Just serve index.html and associated css and js.

Uses npm for eslint.

Screenshots

A binary pair orbiting a larger partner

A greater mass attracts others which had been on escape trajectories

TODO

  • Selection Box
  • Object List
  • Object Detail
  • Left Button Panning
  • Middle Button Pause
  • Parameter Slider (Invisible, mouse/touch drag)
  • Grid
  • Zoom Easing
  • 2-touch Pan & Zoom
    • Either continuous zoom, or discrete with animation of bounding box proposed changes
  • Multi-touch Mass Create
  • Camera Rotation
    • 2-touch Rotation
    • Spinning Frame
  • Undo feature:
    • Undo "Clear Traces" Action
    • Undo "Reset
  • Time Control: Reverse Time
  • Lossy Rescaling To Widen Zoom (Handling overflow/underflow)
  • Track farthest reaches, min/max in each dimension (x, y)
  • Calculate Work as FxD as measure of energy flux
    • Option to automatically slow time when energy flux is greater
  • Handle pointerleave or other mechanism when window loses focus
  • Verify stationary pointer leads to zero pointer velocity