pub struct DatumEnsemble {
pub type: Option<String>,
pub name: String,
pub members: Vec<DatumEnsembleMember>,
pub accuracy: String,
pub ellipsoid: Option<Ellipsoid>,
pub id: Option<Id>,
pub ids: Ids,
}Expand description
§DatumEnsemble Interface
Represents a datum ensemble, which is a collection of datums.
Geodetic and vertical CRSs are associated with either a reference frame (datum) or a datum ensemble. The members of a datum ensemble are given as a list of reference frames. The list may contain reference frame name and/or identifier. All members of a datum ensemble are realizations of one shared terrestrial or vertical reference system.
For an ensemble of geodetic reference frames (datums), the WKT string includes the description of the ellipsoid used by the members. This information is available from any and all of the definitions of each member. It is included in the ensemble WKT to facilitate direct access to the information. The WKT string for a datum ensemble may also include the description of the prime meridian applying to all members of the ensemble.
For both geodetic and vertical datum ensembles, the ensemble description includes its ‘accuracy’, an indication of the difference in coordinate values of a point between different members of the datum ensemble. It may be regarded as a measure of the inaccuracy introduced through the assumption that ensemble members are approximately equivalent.
Use of the datum ensemble concept comes with a health warning. If data is associated with a CRS having a datum ensemble, it will not be possible to identify which of the datum ensemble members the data might more accurately be referenced to. In high accuracy applications, datum ensembles should not be used; individual reference frames should be identified.
Fields§
§type: Option<String>Indicates the type of datum ensemble. Always “DatumEnsemble” for this interface.
name: StringThe name of the datum ensemble.
members: Vec<DatumEnsembleMember>An array of members in the datum ensemble.
accuracy: StringThe accuracy of the datum ensemble.
ellipsoid: Option<Ellipsoid>The ellipsoid associated with the datum ensemble.
id: Option<Id>An identifier for the datum ensemble.
ids: IdsAn array of identifiers for the datum ensemble.
Implementations§
Source§impl DatumEnsemble
impl DatumEnsemble
Sourcepub fn to_projection_transform(&self, proj_transform: &mut ProjectionTransform)
pub fn to_projection_transform(&self, proj_transform: &mut ProjectionTransform)
Convert a DatumEnsemble to a ProjectionTransform
Trait Implementations§
Source§impl Clone for DatumEnsemble
impl Clone for DatumEnsemble
Source§fn clone(&self) -> DatumEnsemble
fn clone(&self) -> DatumEnsemble
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DatumEnsemble
impl Debug for DatumEnsemble
Source§impl Default for DatumEnsemble
impl Default for DatumEnsemble
Source§fn default() -> DatumEnsemble
fn default() -> DatumEnsemble
Source§impl<'de> Deserialize<'de> for DatumEnsemblewhere
DatumEnsemble: Default,
impl<'de> Deserialize<'de> for DatumEnsemblewhere
DatumEnsemble: Default,
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>,
Source§impl PartialEq for DatumEnsemble
impl PartialEq for DatumEnsemble
Source§impl Serialize for DatumEnsemble
impl Serialize for DatumEnsemble
Source§impl ToProjJSON for DatumEnsemble
impl ToProjJSON for DatumEnsemble
Source§fn set_accuracy(&mut self, accuracy: String)
fn set_accuracy(&mut self, accuracy: String)
Source§fn set_ellipsoid(&mut self, ellipsoid: Ellipsoid)
fn set_ellipsoid(&mut self, ellipsoid: Ellipsoid)
Source§fn set_member(&mut self, member: DatumEnsembleMember)
fn set_member(&mut self, member: DatumEnsembleMember)
Source§fn set_usage(&mut self, _usage: ObjectUsage)
fn set_usage(&mut self, _usage: ObjectUsage)
Source§fn set_anchor(&mut self, _anchor: String)
fn set_anchor(&mut self, _anchor: String)
Source§fn set_coordinate_system(&mut self, _cs: CoordinateSystem)
fn set_coordinate_system(&mut self, _cs: CoordinateSystem)
Source§fn set_temporal_extent(&mut self, _extent: TemporalExtent)
fn set_temporal_extent(&mut self, _extent: TemporalExtent)
Source§fn set_vertical_extent(&mut self, _extent: VerticalExtent)
fn set_vertical_extent(&mut self, _extent: VerticalExtent)
Source§fn set_method(&mut self, _method: Method)
fn set_method(&mut self, _method: Method)
Source§fn set_ensemble(&mut self, _ensemble: DatumEnsemble)
fn set_ensemble(&mut self, _ensemble: DatumEnsemble)
Source§fn set_frame_epoch(&mut self, _epoch: f64)
fn set_frame_epoch(&mut self, _epoch: f64)
Source§fn set_parameter(&mut self, _parameter: ParameterValue)
fn set_parameter(&mut self, _parameter: ParameterValue)
Source§fn set_meridian(&mut self, _meridian: Meridian)
fn set_meridian(&mut self, _meridian: Meridian)
Source§fn set_prime_meridian(&mut self, _prime_meridian: PrimeMeridian)
fn set_prime_meridian(&mut self, _prime_meridian: PrimeMeridian)
Source§fn set_conversion(&mut self, _conversion: Conversion)
fn set_conversion(&mut self, _conversion: Conversion)
Source§fn set_geodetic_crs(&mut self, _geodetic_crs: GeodeticCRS)
fn set_geodetic_crs(&mut self, _geodetic_crs: GeodeticCRS)
Source§fn set_projected_crs(&mut self, _projected_crs: ProjectedCRS)
fn set_projected_crs(&mut self, _projected_crs: ProjectedCRS)
Source§fn set_projection(&mut self, _name: String)
fn set_projection(&mut self, _name: String)
impl StructuralPartialEq for DatumEnsemble
Auto Trait Implementations§
impl Freeze for DatumEnsemble
impl RefUnwindSafe for DatumEnsemble
impl Send for DatumEnsemble
impl Sync for DatumEnsemble
impl Unpin for DatumEnsemble
impl UnwindSafe for DatumEnsemble
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)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
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().