HMouaziz / MissionPlanner-Client

GNU General Public License v3.0
0 stars 0 forks source link

Add visualisation to Eclipse Calculator #4

Open HMouaziz opened 2 months ago

HMouaziz commented 2 months ago

Create a 2D visualisation of the results using D3.js

HMouaziz commented 2 months ago

Interface and Input Requirements:

- Celestial Body Selection: Dropdown or search selection to choose a primary celestial body around which the orbit is calculated.
- Apoapsis and Periapsis Input: Numeric inputs for entering these values in kilometers.
- Moon Position Slider: An interactive slider to adjust the moon's position relative to the planet, affecting shadow calculations.
- Inclination Slider with Numerical Input: Provides fine control over the orbital inclination; slider for visual adjustment and a numerical input for precise entry.
- Min/Max Selector: Toggle switch or radio buttons to choose between calculating the minimum or maximum transit time in shadow.

Outputs:

- Transit Time: Display the calculated time the spacecraft remains in shadow, considering all the input parameters and orbital dynamics.

Visualization Requirements:

- Use R3F.js
- Static Light Direction: Simplifies the model by fixing the light source direction relative to the celestial body.
- Planet Grid: Display a grid over the planet to indicate directional orientation (north and south).
- Shadow Visualization: Show shadows cast by the planet and any relevant moons based on the current configurations.

Changes to Calculation:

- Single Light Source Assumption: This simplifies shadow calculations by assuming all light emanates from a single point (the sun).
- Shadow Calculation from Moons: Include the effect of any moons (using the moon position slider input) in casting shadows on the spacecraft’s orbit.