pub struct OrthometricHeightM {
pub value_m: f64,
}Expand description
Orthometric height H in metres above the EGM96 mean sea level geoid.
DTED/SRTM terrain postings use this datum. Convert to ellipsoidal height
only through Self::to_ellipsoidal_height_deg or
Self::to_ellipsoidal_height_rad, which require a pinned geoid tier.
Fields§
§value_m: f64Orthometric height H in metres.
Implementations§
Source§impl OrthometricHeightM
impl OrthometricHeightM
Sourcepub fn to_ellipsoidal_height_deg(
self,
latitude_deg: f64,
longitude_deg: f64,
geoid: TerrainGeoidModel<'_>,
) -> Result<EllipsoidalHeightM, TerrainDatumError>
pub fn to_ellipsoidal_height_deg( self, latitude_deg: f64, longitude_deg: f64, geoid: TerrainGeoidModel<'_>, ) -> Result<EllipsoidalHeightM, TerrainDatumError>
Convert this orthometric height to ellipsoidal height h = H + N.
Inputs are geodetic (latitude_deg, longitude_deg), matching the geoid
module’s axis order. Terrain lookup APIs use (longitude_deg, latitude_deg), so call sites should pass the axes deliberately.
TerrainGeoidModel::Egm96OneDegree uses the embedded EGM96 1-degree
grid. It agrees with the full EGM96 15-arcminute grid to about 0.4 m RMS,
so byte-identical terrain heights do not imply byte-identical
ellipsoidal heights across geoid tiers.
Sourcepub fn to_ellipsoidal_height_rad(
self,
latitude_rad: f64,
longitude_rad: f64,
geoid: TerrainGeoidModel<'_>,
) -> Result<EllipsoidalHeightM, TerrainDatumError>
pub fn to_ellipsoidal_height_rad( self, latitude_rad: f64, longitude_rad: f64, geoid: TerrainGeoidModel<'_>, ) -> Result<EllipsoidalHeightM, TerrainDatumError>
Convert this orthometric height to ellipsoidal height h = H + N.
Inputs are geodetic (latitude_rad, longitude_rad), matching the geoid
module’s axis order. TerrainGeoidModel::Egm96OneDegree uses the
embedded EGM96 1-degree grid. It agrees with the full EGM96
15-arcminute grid to about 0.4 m RMS, so byte-identical terrain heights
do not imply byte-identical ellipsoidal heights across geoid tiers.
Trait Implementations§
Source§impl Clone for OrthometricHeightM
impl Clone for OrthometricHeightM
Source§fn clone(&self) -> OrthometricHeightM
fn clone(&self) -> OrthometricHeightM
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 OrthometricHeightM
Source§impl Debug for OrthometricHeightM
impl Debug for OrthometricHeightM
Source§impl PartialEq for OrthometricHeightM
impl PartialEq for OrthometricHeightM
Source§fn eq(&self, other: &OrthometricHeightM) -> bool
fn eq(&self, other: &OrthometricHeightM) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for OrthometricHeightM
Auto Trait Implementations§
impl Freeze for OrthometricHeightM
impl RefUnwindSafe for OrthometricHeightM
impl Send for OrthometricHeightM
impl Sync for OrthometricHeightM
impl Unpin for OrthometricHeightM
impl UnsafeUnpin for OrthometricHeightM
impl UnwindSafe for OrthometricHeightM
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.