planet_generator 0.0.7-pre-alpha

[WIP] Generates data for galaxies, sectors, solar systems, planets and their inhabitants (Check README for features list).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::prelude::OrbitalPoint;

/// Sorts the Vec<OrbitalPoint> in place based on the average_distance in their own_orbit
pub fn sort_orbital_points_by_average_distance(orbital_points: &mut Vec<OrbitalPoint>) {
    orbital_points.sort_by(|a, b| {
        let distance_a = a
            .own_orbit
            .as_ref()
            .map_or(f64::INFINITY, |orbit| orbit.average_distance);
        let distance_b = b
            .own_orbit
            .as_ref()
            .map_or(f64::INFINITY, |orbit| orbit.average_distance);
        distance_a
            .partial_cmp(&distance_b)
            .unwrap_or(std::cmp::Ordering::Equal)
    });
}