Expand description
§Reference Frames Module
This module re-exports astronomical reference frames defined in affn
and adds siderust-specific extensions including planetary body-fixed
frames and historical catalog frames.
§Predefined Frames (from affn)
The following reference frames are available (from affn):
ICRS: International Celestial Reference System (quasi-inertial, fundamental reference).ICRF: International Celestial Reference Frame (ICRS realization via VLBI).Horizontal: Local horizon system (altitude-azimuth).EquatorialMeanJ2000: Mean equator/equinox of J2000 (FK5/J2000 mean).EquatorialMeanOfDate: Mean equator/equinox of date (precessed, no nutation).EquatorialTrueOfDate: True equator/equinox of date (precession + nutation).EclipticMeanJ2000: Mean ecliptic coordinate system at J2000.EclipticOfDate: Mean ecliptic coordinate system of date.EclipticMeanOfDate: Alias forEclipticOfDate(naming parity).EclipticTrueOfDate: True ecliptic coordinate system of date.ITRF: International Terrestrial Reference Frame (Earth-fixed).ECEF: Earth-Centered, Earth-Fixed (geocentric, rotating with the Earth).Galactic: Galactic coordinate system (IAU 1958).GCRS: Geocentric Celestial Reference System.CIRS: Celestial Intermediate Reference System.TIRS: Terrestrial Intermediate Reference System.
§Siderust-Specific Frames
All frames are now defined in affn and re-exported here.
§Planetary Body-Fixed Frames (from affn)
The following body-fixed frame marker types are defined in affn
(behind feature = "astro") and re-exported here. The generic
crate::astro::orientation::IauRotationParams type comes from crate::astro, while body-specific
constants (e.g. MARS_ROTATION) are defined in crate::bodies::solar_system
and re-exported by planetary. FrameRotationProvider
implementations live in transform::providers.
MercuryFixed: Mercury IAU 2015 body-fixed rotation model.VenusFixed: Venus IAU 2015 body-fixed rotation model.MarsFixed: Mars IAU 2015 body-fixed rotation model.MoonPrincipalAxes: Moon principal axes (selenocentric) frame.JupiterSystemIII: Jupiter System III magnetic-field-based rotation.SaturnFixed: Saturn IAU body-fixed rotation model.UranusFixed: Uranus IAU body-fixed rotation model.NeptuneFixed: Neptune IAU body-fixed rotation model.PlutoFixed: Pluto IAU body-fixed rotation model.
Each frame type provides its canonical name via ReferenceFrame::frame_name().
Planetocentric body-fixed frames use latitude/longitude/radius naming
via SphericalNaming.
§Extending
To define a new reference frame, use the derive macro:
use affn::prelude::*;
#[derive(Debug, Copy, Clone, ReferenceFrame)]
struct MyCustomFrame;
assert_eq!(MyCustomFrame::frame_name(), "MyCustomFrame");Modules§
- planetary
- Planetary body-fixed frame markers and their IAU rotation-parameter constants.
Structs§
- CIRS
- Celestial Intermediate Reference System (CIRS).
- ECEF
- Earth-Centred Earth-Fixed — mathematical geocentric frame (no EOP).
- EME2000
- Earth Mean Equator and Equinox of J2000.0 (EME2000).
- Ecliptic
Mean J2000 - Mean ecliptic of J2000.0.
- Ecliptic
OfDate - Mean ecliptic of date.
- Ecliptic
True OfDate - True ecliptic of date.
- Ellipsoidal
Position - An ellipsoidal position (center + frame + height above ellipsoid).
- Equatorial
Mean J2000 - Mean equator and equinox of J2000.0 (FK5/J2000 mean).
- Equatorial
Mean OfDate - Mean equator and equinox of date.
- Equatorial
True OfDate - True equator and equinox of date.
- FK4B1950
- Mean equator and mean equinox of B1950.0 (FK4 catalog reference).
- GCRS
- Geocentric Celestial Reference System (GCRS).
- Galactic
- Galactic coordinate system.
- Grs80
- GRS 80 (Geodetic Reference System 1980) reference ellipsoid.
- Horizontal
- Local horizon coordinate system.
- ICRF
- International Celestial Reference Frame (ICRF).
- ICRS
- International Celestial Reference System (ICRS).
- ITRF
- International Terrestrial Reference Frame — EOP-realised Earth-fixed frame.
- Jupiter
SystemIII - Jupiter System III body-fixed frame.
- Mars
Fixed - Mars IAU body-fixed frame.
- Mercury
Fixed - Mercury IAU body-fixed frame.
- Moon
Principal Axes - Moon principal axes (selenocentric) frame.
- Neptune
Fixed - Neptune IAU body-fixed frame.
- Pluto
Fixed - Pluto IAU body-fixed frame.
- Saturn
Fixed - Saturn IAU body-fixed frame.
- TEME
- True Equator, Mean Equinox (TEME) frame.
- TIRS
- Terrestrial Intermediate Reference System (TIRS).
- Uranus
Fixed - Uranus IAU body-fixed frame.
- Venus
Fixed - Venus IAU body-fixed frame.
- Wgs84
- WGS 84 (World Geodetic System 1984) reference ellipsoid.
Traits§
- Ellipsoid
- A geodetic reference ellipsoid defined by its semi-major axis and flattening.
- HasEllipsoid
- Marker trait associating a
ReferenceFramewith a specificEllipsoid. - Mutable
Frame - Marker trait for frames that support time-independent mutual transformations.
- Reference
Frame - A trait for defining a reference frame (orientation).
- Spherical
Naming - Provides frame-specific names for spherical coordinate components.
Type Aliases§
- Ecliptic
Mean OfDate - Mean ecliptic of date.