///|
pub(all) struct LunarCoverage {
body : String
south_deg : Double
north_deg : Double
west_deg : Double
east_deg : Double
center_lat_deg : Double
center_lon_deg : Double
resolution_m : Double
} derive(Debug, Eq, ToJson, FromJson)
///|
pub fn lunar_coverage(
south_deg : Double,
north_deg : Double,
west_deg : Double,
east_deg : Double,
center_lat_deg : Double,
center_lon_deg : Double,
resolution_m : Double,
body? : String = "Moon",
) -> LunarCoverage {
{
body,
south_deg,
north_deg,
west_deg,
east_deg,
center_lat_deg,
center_lon_deg,
resolution_m,
}
}
///|
pub(all) struct LunarCoordinateFrame {
frame_id : String
body : String
datum : String
projection : String
radius_reference_m : Double
notes : String
} derive(Debug, Eq, ToJson, FromJson)
///|
pub fn lro_lola_south_pole_frame() -> LunarCoordinateFrame {
{
frame_id: "moon-lola-south-pole-polar-stereographic-v1",
body: "Moon",
datum: "LOLA/GRAIL reference sphere",
projection: "Polar Stereographic",
radius_reference_m: 1737400.0,
notes: "South-pole LOLA GDR DEM frame used for first trusted square extraction.",
}
}