Gravity Simulator
Runs in a browser. Just serve index.html and associated css and js.
Uses npm for eslint.
Screenshots
TODO
-
Selection Box
-
Enhancement: Create Vector class and refactor to use
-
Feature: Object List
-
Feature: Object Detail
-
Enhancement: Handle pointerleave or other mechanism when window loses focus
-
Enhancement: Calculate Work as FxD as measure of energy flux
-
Feature: Automatically slow time when energy flux is greater
-
Enhancement: Add z-axis (Initially nothing changes, z = 0)
-
Feature: Isometric 3d View
-
Feature: Grid
-
Feature: Polar Coordinates
-
Feature: Cylindrical Coordinates
-
Feature: Spherical Coordinates
-
Feature: Camera Velocity Display
-
Enhancement: World State Snapshots
-
Feature: List / Save / Load World States
-
Feature: Left Button Panning
-
Feature: Middle Button Pause
-
Feature: Parameter Slider (Invisible, mouse/touch drag)
-
Enhancement: Zoom Easing
-
Feature: 2-touch Pan & Zoom Either continuous zoom, or discrete with animation of bounding box proposed changes
-
Feature: Multi-touch Mass Create
-
Feature: Camera Rotation
- 2-touch Rotation
- Spinning Frame
-
Feature: Undo
- Undo "Clear Traces" Action
- In general have a user action history
- Point-in-time restoral of world state (Marked points, i.e. Snapshots)
-
Feature: Time Control: Reverse Time
-
Feature: Lossy Rescaling To Widen Zoom (Handling overflow/underflow)
-
Enhancement: Track farthest reaches, min/max in each dimension (x, y)
-
Task: Verify stationary pointer leads to zero pointer velocity

