pub enum CrsDef {
Geographic(GeographicCrsDef),
Projected(ProjectedCrsDef),
Compound(Box<CompoundCrsDef>),
}Expand description
A Coordinate Reference System definition.
Variants§
Geographic(GeographicCrsDef)
Geographic CRS (lon/lat in degrees).
Projected(ProjectedCrsDef)
Projected CRS (easting/northing in the CRS’s native linear unit).
Compound(Box<CompoundCrsDef>)
Compound horizontal + vertical CRS.
Implementations§
Source§impl CrsDef
impl CrsDef
Sourcepub fn is_geographic(&self) -> bool
pub fn is_geographic(&self) -> bool
Returns true if this CRS’s horizontal component is geographic.
Sourcepub fn is_projected(&self) -> bool
pub fn is_projected(&self) -> bool
Returns true if this CRS’s horizontal component is projected.
Sourcepub fn is_compound(&self) -> bool
pub fn is_compound(&self) -> bool
Returns true if this is a compound horizontal + vertical CRS.
Sourcepub fn as_geographic(&self) -> Option<&GeographicCrsDef>
pub fn as_geographic(&self) -> Option<&GeographicCrsDef>
Return the geographic horizontal component, when present.
Sourcepub fn as_projected(&self) -> Option<&ProjectedCrsDef>
pub fn as_projected(&self) -> Option<&ProjectedCrsDef>
Return the projected horizontal component, when present.
Sourcepub fn vertical_crs(&self) -> Option<&VerticalCrsDef>
pub fn vertical_crs(&self) -> Option<&VerticalCrsDef>
Return the explicit vertical CRS component, when this is compound.
Sourcepub fn horizontal_crs(&self) -> Option<CrsDef>
pub fn horizontal_crs(&self) -> Option<CrsDef>
Return this CRS’s horizontal component as a standalone CRS definition.
This intentionally drops an explicit vertical component. Use it only for
horizontal-only workflows such as AOI filtering, footprint reprojection,
and 2D previews where z is outside the operation contract.
Sourcepub fn base_geographic_crs_epsg(&self) -> Option<u32>
pub fn base_geographic_crs_epsg(&self) -> Option<u32>
Returns the geographic CRS EPSG code used for operation selection, when known.
Sourcepub fn semantically_equivalent(&self, other: &Self) -> bool
pub fn semantically_equivalent(&self, other: &Self) -> bool
Returns true when two CRS definitions map to the same internal semantics.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CrsDef
impl RefUnwindSafe for CrsDef
impl Send for CrsDef
impl Sync for CrsDef
impl Unpin for CrsDef
impl UnsafeUnpin for CrsDef
impl UnwindSafe for CrsDef
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 more