solarsystems 0.0.1

N-body solar system engine — gravitational dynamics, orbital mechanics, perturbations, event detection, and full celestial orchestration
Documentation
pub use ::neptunes::atmosphere;
pub use ::neptunes::biosphere;
pub use ::neptunes::geodata;
pub use ::neptunes::geology;
pub use ::neptunes::hydrology;
pub use ::neptunes::lighting;
pub use ::neptunes::physics;
pub use ::neptunes::rendering;
pub use ::neptunes::satellites as body_satellites;
pub use ::neptunes::temporal;
pub use ::neptunes::terrain;

pub fn surface_gravity() -> f64 {
    *::neptunes::SURFACEGRAVITY
}

pub fn orbit() -> ::neptunes::physics::orbit::NeptuneOrbit {
    ::neptunes::physics::orbit::NeptuneOrbit::new()
}

pub fn escape_velocity() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::escape_velocity_at_surface()
}

pub fn orbital_period_s() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::new().orbitalperiods()
}

pub fn orbital_period_days() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::new().orbitalperioddays()
}

pub fn mean_orbital_velocity() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::new().mean_orbital_velocity()
}

pub fn perihelion() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::new().perihelionm()
}

pub fn aphelion() -> f64 {
    ::neptunes::physics::orbit::NeptuneOrbit::new().aphelionm()
}

pub fn terrain_shader() -> crate::rendering::shaders::ShaderEndpoint {
    crate::rendering::shaders::ShaderEndpoint::terrain()
}

pub fn atmosphere_shader() -> crate::rendering::shaders::ShaderEndpoint {
    crate::rendering::shaders::ShaderEndpoint::atmosphere()
}

pub fn interior_ocean_shader() -> crate::rendering::shaders::ShaderEndpoint {
    crate::rendering::shaders::ShaderEndpoint::interior_ocean()
}

pub fn band_dynamics_shader() -> crate::rendering::shaders::ShaderEndpoint {
    crate::rendering::shaders::ShaderEndpoint::band_dynamics()
}