Class PassageGeodesy
- Namespace
- EncDotNet.S100.Navigation
- Assembly
- EncDotNet.S100.Navigation.dll
Distances and interpolation along rhumb lines and great circles on the WGS-84 ellipsoid, used to measure legs and to place samples along them.
public static class PassageGeodesy
- Inheritance
-
PassageGeodesy
- Inherited Members
Remarks
A great-circle leg follows the ellipsoidal geodesic. Both geometries come from Wgs84Geodesy, as do the viewer's route metrics, so a leg measured here has the same length the route panel shows.
Fields
EarthRadiusMeters
Mean earth radius in metres (EarthRadiusMetres).
public const double EarthRadiusMeters = 6371008.8
Field Value
EarthRadiusNauticalMiles
Mean earth radius in nautical miles.
public const double EarthRadiusNauticalMiles = 3440.069546436285
Field Value
MetersPerDegreeLatitude
Metres per degree of latitude on the mean sphere.
public const double MetersPerDegreeLatitude = 111195.08023353292
Field Value
MetersPerNauticalMile
Metres in one international nautical mile.
public const double MetersPerNauticalMile = 1852
Field Value
Methods
DistanceMeters(GeoPosition, GeoPosition, LegGeometry)
Distance in metres between two positions along the given leg geometry.
public static double DistanceMeters(GeoPosition from, GeoPosition to, LegGeometry geometry)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
geometryLegGeometryRhumb line or great circle.
Returns
- double
The distance in metres.
GreatCircleDistanceMeters(GeoPosition, GeoPosition)
Great-circle (geodesic) distance in metres.
public static double GreatCircleDistanceMeters(GeoPosition from, GeoPosition to)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
Returns
- double
The distance in metres.
GreatCircleInterpolate(GeoPosition, GeoPosition, double)
The position a fraction of the way along the great circle (geodesic).
public static GeoPosition GreatCircleInterpolate(GeoPosition from, GeoPosition to, double fraction)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
fractiondoubleFraction of the distance, from 0 to 1.
Returns
- GeoPosition
The interpolated position.
Interpolate(GeoPosition, GeoPosition, double, LegGeometry)
The position a fraction of the way from from to
to along the given leg geometry.
public static GeoPosition Interpolate(GeoPosition from, GeoPosition to, double fraction, LegGeometry geometry)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
fractiondoubleFraction of the distance, from 0 (start) to 1 (end).
geometryLegGeometryRhumb line or great circle.
Returns
- GeoPosition
The interpolated position.
RhumbDistanceMeters(GeoPosition, GeoPosition)
Rhumb-line (loxodrome) distance in metres.
public static double RhumbDistanceMeters(GeoPosition from, GeoPosition to)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
Returns
- double
The distance in metres.
RhumbInterpolate(GeoPosition, GeoPosition, double)
The position a fraction of the way along the rhumb line.
public static GeoPosition RhumbInterpolate(GeoPosition from, GeoPosition to, double fraction)
Parameters
fromGeoPositionThe start position.
toGeoPositionThe end position.
fractiondoubleFraction of the distance, from 0 to 1.
Returns
- GeoPosition
The interpolated position.