orbit/js/galaxy
Brian Fertig 856508ff01 Change galaxy layout to a 2:1 field and harden jump-network construction
- Replace the square star field with a wide (width × height) field whose
  aspect matches the map plate, so the fully-zoomed-out galaxy fills the
  plate instead of letterboxing; recompute zone edges for equal-area thirds
  under the new diagonal CDF.
- Add fitPadded() in SystemChart.js and use it in GalaxyView.js to frame
  the galaxy as a true rectangle fit with a plate-pixel margin, replacing
  the old world-unit padding that left stars on the plate edge.
- Rework the JumpNetwork spanning-tree heuristic to "save the stranded
  first" (attach the candidate with the fewest unvisited non-barren
  neighbors) and strengthen the repair pass: never attach to barren nodes,
  guard swaps against cycles via inSubtree(), and add a last-resort
  fallback that preserves strong connectivity.
- Update tests (galaxy.test.mjs, system-chart.test.mjs) for the field
  bounds and the new fitPadded behavior; refresh README, PROJECT_NOTES,
  and data comments to document the 2:1 field and platePadding knob.
2026-09-08 14:51:19 -06:00
..
Discovery.js
Galaxy.js Change galaxy layout to a 2:1 field and harden jump-network construction 2026-09-08 14:51:19 -06:00
GalaxyChart.js
JumpNetwork.js Change galaxy layout to a 2:1 field and harden jump-network construction 2026-09-08 14:51:19 -06:00
JumpTravel.js
PlanetFrames.js
Route.js
StationFrames.js
SystemChart.js Change galaxy layout to a 2:1 field and harden jump-network construction 2026-09-08 14:51:19 -06:00
SystemGenerator.js Rework galaxy layout into square Poisson-disk field with zone-based type 2026-09-08 14:28:24 -06:00
SystemReport.js Compact the system dossier to identity + faction status 2026-09-08 12:07:18 -06:00