pub struct LaunchFrame { /* private fields */ }Expand description
An East-North-Up frame tied to a point on an ellipsoid: the launch frame L.
Implementations§
Source§impl LaunchFrame
impl LaunchFrame
Sourcepub fn new(ellipsoid: Ellipsoid, origin: Geodetic) -> Result<Self, CoreError>
pub fn new(ellipsoid: Ellipsoid, origin: Geodetic) -> Result<Self, CoreError>
The ENU frame with its origin at origin on ellipsoid.
§Errors
CoreError::Domain if origin fails Geodetic::new’s checks (for example degrees
written into the radian fields).
Sourcepub fn origin_ecef_m(&self) -> DVec3
pub fn origin_ecef_m(&self) -> DVec3
The origin’s ECEF position, m.
Sourcepub fn ecef_from_enu_rotation(&self) -> DMat3
pub fn ecef_from_enu_rotation(&self) -> DMat3
The rotation mapping launch-frame components to ECEF components; its columns are ê,
n̂ and û at the origin.
Sourcepub fn ecef_from_enu(&self, position_enu_m: DVec3) -> DVec3
pub fn ecef_from_enu(&self, position_enu_m: DVec3) -> DVec3
ECEF position of a point given in the launch frame: r_ECEF = r_0 + R r_L.
Sourcepub fn enu_from_ecef(&self, position_ecef_m: DVec3) -> DVec3
pub fn enu_from_ecef(&self, position_ecef_m: DVec3) -> DVec3
Launch-frame position of a point given in ECEF: r_L = Rᵀ (r_ECEF − r_0).
Sourcepub fn geodetic_from_enu(
&self,
position_enu_m: DVec3,
) -> Result<Geodetic, CoreError>
pub fn geodetic_from_enu( &self, position_enu_m: DVec3, ) -> Result<Geodetic, CoreError>
Geodetic position of a point given in the launch frame.
§Errors
As Ellipsoid::geodetic_from_ecef: only for non-finite input or points deep inside the
Earth.
Sourcepub fn enu_from_geodetic(&self, point: Geodetic) -> DVec3
pub fn enu_from_geodetic(&self, point: Geodetic) -> DVec3
Launch-frame position of a geodetic point.
Sourcepub fn earth_rotation_enu_rad_s(&self, omega_rad_s: f64) -> DVec3
pub fn earth_rotation_enu_rad_s(&self, omega_rad_s: f64) -> DVec3
The Earth’s rotation vector Ω = ω (0, cos φ₀, sin φ₀) resolved in the launch frame,
rad/s, for a rotation rate omega_rad_s (WGS 84: 7.292115e-5 rad/s).
Trait Implementations§
Source§impl Clone for LaunchFrame
impl Clone for LaunchFrame
Source§fn clone(&self) -> LaunchFrame
fn clone(&self) -> LaunchFrame
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for LaunchFrame
Source§impl Debug for LaunchFrame
impl Debug for LaunchFrame
Source§impl<'de> Deserialize<'de> for LaunchFrame
impl<'de> Deserialize<'de> for LaunchFrame
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for LaunchFrame
impl PartialEq for LaunchFrame
Source§fn eq(&self, other: &LaunchFrame) -> bool
fn eq(&self, other: &LaunchFrame) -> bool
self and other values to be equal, and is used by ==.