Skip to main content

TrackError

Struct TrackError 

Source
pub struct TrackError {
    pub cross_track_nm: f64,
    pub along_track_nm: f64,
}
Expand description

Where a vessel sits relative to the leg from -> to.

Fields§

§cross_track_nm: f64

Perpendicular distance off the leg, nautical miles, positive when the vessel is to starboard of the track.

The sign is the one a helm display needs inverted: positive here means “steer to port to get back”. NMEA’s XTE sentence instead carries a magnitude plus an L/R letter naming the direction to steer, so an adapter emitting XTE must flip this, not copy it.

§along_track_nm: f64

Distance from from measured along the leg, nautical miles.

Negative when the vessel has not yet reached from (it lies behind the start of the leg), and greater than the leg length once past to. Both cases are normal and are how leg advance is detected.

Implementations§

Source§

impl TrackError

Source

pub fn remaining_nm(&self, leg_length_nm: f64) -> f64

Distance still to run along the leg, negative once past to.

Trait Implementations§

Source§

impl Clone for TrackError

Source§

fn clone(&self) -> TrackError

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for TrackError

Source§

impl Debug for TrackError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for TrackError

Source§

fn eq(&self, other: &TrackError) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for TrackError

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.