#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum VenusBiome {
Highland,
Plains,
Volcanic,
Tessera,
}
pub struct BiomeClassifier;
impl BiomeClassifier {
pub fn classify(&self, lat_deg: f64, elevation_m: f64, thermal_inertia: f64) -> VenusBiome {
if !(lat_deg.is_finite() && elevation_m.is_finite() && thermal_inertia.is_finite()) {
return VenusBiome::Plains;
}
if elevation_m > 4000.0 {
VenusBiome::Highland
} else if elevation_m > 1500.0 {
VenusBiome::Tessera
} else {
VenusBiome::Plains
}
}
}