pub struct LaunchAngles {
pub azimuth_rad: f64,
pub elevation_rad: f64,
pub roll_rad: f64,
}Expand description
The attitude of the body axis relative to the launch frame, as launch-rail style angles.
q = R_z(−A) ⊗ R_x(E − π/2) ⊗ R_z(φ), so the body axis z_B points along
(sin A cos E, cos A cos E, sin E) in the launch frame. At E = ±90° azimuth and roll turn
about the same axis; LaunchAngles::from_quaternion then reports A = 0 and puts the whole
turn into φ.
Fields§
§azimuth_rad: f64Azimuth A of the body axis, rad, clockwise from true north (π/2 points east).
elevation_rad: f64Elevation E of the body axis above the horizon, rad (π/2 is vertical).
roll_rad: f64Roll φ about the body axis, rad, right-handed about z_B.
Implementations§
Source§impl LaunchAngles
impl LaunchAngles
Sourcepub fn to_quaternion(self) -> DQuat
pub fn to_quaternion(self) -> DQuat
The attitude quaternion q = R_z(−A) ⊗ R_x(E − π/2) ⊗ R_z(φ).
Sourcepub fn from_quaternion(q: DQuat) -> Self
pub fn from_quaternion(q: DQuat) -> Self
The launch angles of a unit attitude quaternion, with A ∈ [0, 2π), E ∈ [−π/2, π/2]
and φ ∈ (−π, π].
Trait Implementations§
Source§impl Clone for LaunchAngles
impl Clone for LaunchAngles
Source§fn clone(&self) -> LaunchAngles
fn clone(&self) -> LaunchAngles
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for LaunchAngles
Source§impl Debug for LaunchAngles
impl Debug for LaunchAngles
Source§impl<'de> Deserialize<'de> for LaunchAngles
impl<'de> Deserialize<'de> for LaunchAngles
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for LaunchAngles
impl PartialEq for LaunchAngles
Source§fn eq(&self, other: &LaunchAngles) -> bool
fn eq(&self, other: &LaunchAngles) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for LaunchAngles
impl Serialize for LaunchAngles
impl StructuralPartialEq for LaunchAngles
Auto Trait Implementations§
impl Freeze for LaunchAngles
impl RefUnwindSafe for LaunchAngles
impl Send for LaunchAngles
impl Sync for LaunchAngles
impl Unpin for LaunchAngles
impl UnsafeUnpin for LaunchAngles
impl UnwindSafe for LaunchAngles
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more