pub struct Iau<T: TryRotationalElements>(/* private fields */);Expand description
IAU body-fixed reference frame derived from rotational elements.
Implementations§
Source§impl<T> Iau<T>where
T: RotationalElements,
impl<T> Iau<T>where
T: RotationalElements,
Source§impl<T> Iau<T>where
T: TryRotationalElements,
impl<T> Iau<T>where
T: TryRotationalElements,
Sourcepub fn try_new(body: T) -> Result<Self, UndefinedOriginPropertyError>
pub fn try_new(body: T) -> Result<Self, UndefinedOriginPropertyError>
Creates an IAU frame, returning an error if rotational elements are undefined.
Trait Implementations§
impl<T: Copy + TryRotationalElements> Copy for Iau<T>
impl<T: Eq + TryRotationalElements> Eq for Iau<T>
Source§impl<T: RotationalElements + Spheroid + Copy> ReferenceEllipsoid for Iau<T>
impl<T: RotationalElements + Spheroid + Copy> ReferenceEllipsoid for Iau<T>
Source§fn reference_ellipsoid(&self) -> Ellipsoid
fn reference_ellipsoid(&self) -> Ellipsoid
Returns the reference ellipsoid conventionally paired with this frame.
Source§impl<T> ReferenceFrame for Iau<T>where
T: TryRotationalElements + CoordinateOrigin,
impl<T> ReferenceFrame for Iau<T>where
T: TryRotationalElements + CoordinateOrigin,
Source§impl<T, P, R> RotateToIcrf<T, P> for Iau<R>where
T: ContinuousTimeScale + Copy,
R: TryRotationalElements + Copy,
P: RotationProvider<T> + TryOffset<T, Tdb>,
impl<T, P, R> RotateToIcrf<T, P> for Iau<R>where
T: ContinuousTimeScale + Copy,
R: TryRotationalElements + Copy,
P: RotationProvider<T> + TryOffset<T, Tdb>,
impl<T: PartialEq + TryRotationalElements> StructuralPartialEq for Iau<T>
Auto Trait Implementations§
impl<T> Freeze for Iau<T>where
T: Freeze,
impl<T> RefUnwindSafe for Iau<T>where
T: RefUnwindSafe,
impl<T> Send for Iau<T>where
T: Send,
impl<T> Sync for Iau<T>where
T: Sync,
impl<T> Unpin for Iau<T>where
T: Unpin,
impl<T> UnsafeUnpin for Iau<T>where
T: UnsafeUnpin,
impl<T> UnwindSafe for Iau<T>where
T: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> TryBodyFixed for Twhere
T: BodyFixed,
impl<T> TryBodyFixed for Twhere
T: BodyFixed,
Source§type Origin = <T as BodyFixed>::Origin
type Origin = <T as BodyFixed>::Origin
The coordinate origin (central body) of the body-fixed frame.
Source§fn try_body_fixed(&self) -> Result<(), NonBodyFixedFrameError>
fn try_body_fixed(&self) -> Result<(), NonBodyFixedFrameError>
Returns
Ok(()) if the frame is body-fixed.Source§fn try_origin(
&self,
) -> Result<<T as TryBodyFixed>::Origin, NonBodyFixedFrameError>
fn try_origin( &self, ) -> Result<<T as TryBodyFixed>::Origin, NonBodyFixedFrameError>
Returns the coordinate origin (central body) of the body-fixed frame.
Source§impl<T> TryReferenceEllipsoid for Twhere
T: ReferenceEllipsoid,
impl<T> TryReferenceEllipsoid for Twhere
T: ReferenceEllipsoid,
Source§fn try_reference_ellipsoid(
&self,
) -> Result<Ellipsoid, UndefinedReferenceEllipsoidError>
fn try_reference_ellipsoid( &self, ) -> Result<Ellipsoid, UndefinedReferenceEllipsoidError>
Returns the reference ellipsoid conventionally paired with this frame,
or an error if the frame is not body-fixed or its origin is not a spheroid.
Source§impl<T, O, Tg, P> TryRotation<O, Tg, T> for Pwhere
T: ContinuousTimeScale + Copy,
O: ReferenceFrame + RotateToIcrf<T, P, Error = RotationError>,
Tg: ReferenceFrame + RotateToIcrf<T, P, Error = RotationError>,
impl<T, O, Tg, P> TryRotation<O, Tg, T> for Pwhere
T: ContinuousTimeScale + Copy,
O: ReferenceFrame + RotateToIcrf<T, P, Error = RotationError>,
Tg: ReferenceFrame + RotateToIcrf<T, P, Error = RotationError>,
Source§type Error = RotationError
type Error = RotationError
The error type returned when the rotation cannot be computed.
Source§fn try_rotation(
&self,
origin: O,
target: Tg,
time: Time<T>,
) -> Result<Rotation, <P as TryRotation<O, Tg, T>>::Error>
fn try_rotation( &self, origin: O, target: Tg, time: Time<T>, ) -> Result<Rotation, <P as TryRotation<O, Tg, T>>::Error>
Computes the rotation from
origin to target at the given time.