EllipsoidGeodesic Class 
A minimum length path conforming to the surface of an ellipsoid and connecting two planetodetic surface points.
This class utilizes the direct and indirect formulations for defining geodesics on an ellipsoid as discussed in "Geodesics on an ellipsoid of revolution.", C. F. Karney, 7 February 2011. The algorithms have been adapted from GeographicLib version 1.44 to optimize performance for the .NET and Java frameworks.
Namespace: AGI.Foundation.Geometry.Shapes
The EllipsoidGeodesic type exposes the following members.
Name  Description  

EllipsoidGeodesic(Ellipsoid, Cartographic, Cartographic) 
Initializes a geodesic on the ellipsoid connecting the two provided planetodetic points.
 
EllipsoidGeodesic(Ellipsoid, Cartographic, Double, Double) 
Initializes a geodesic on the ellipsoid starting at the provided point and which
has the indicated heading at that point and ends at a point located at the provided
distance from the starting point.

Name  Description  

Ellipsoid 
Gets the ellipsoid on which the geodesic lies.
(Overrides EllipsoidSurfaceCurveEllipsoid.)  
FinalHeading 
Gets the heading at the final point.
 
FinalPoint 
Gets the final planetodetic point on the path.
(Overrides EllipsoidSurfaceCurveFinalPoint.)  
InitialHeading 
Gets the heading at the initial point.
 
InitialPoint 
Gets the initial planetodetic point on the path.
(Overrides EllipsoidSurfaceCurveInitialPoint.)  
SurfaceDistance 
Gets the total distance along the geodesic to the location of the final point.
(Overrides EllipsoidSurfaceCurveSurfaceDistance.) 
Name  Description  

ComputeCartographicExtent 
Computes the cartographic bounding box which contains the surface curve. This includes
looking for the minimum and maximum latitudes which may lie above or below the initial and
final points due to oblateness in the Ellipsoid.
(Overrides EllipsoidSurfaceCurveComputeCartographicExtent.)  
ComputeHashCode 
Computes the hash code for this curve.
(Inherited from EllipsoidSurfaceCurve.)  
ComputeIntersection 
Computes the nearest intersection (if any) between two EllipsoidSurfaceCurves.
(Inherited from EllipsoidSurfaceCurve.)  
Equals(Object) 
Indicates whether another object is exactly equal to this instance.
(Inherited from EllipsoidSurfaceCurve.)  
Equals(EllipsoidSurfaceCurve)  Indicates whether the current object is equal to another object of the same type. (Inherited from EllipsoidSurfaceCurve.)  
Finalize  Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)  
FindClosestPointOnCurve(Cartographic) 
Finds the closest point on the curve from the input point.
(Inherited from EllipsoidSurfaceCurve.)  
FindClosestPointOnCurve(Cartographic, Double) 
Finds the closest point on the curve from the input point.
(Overrides EllipsoidSurfaceCurveFindClosestPointOnCurve(Cartographic, Double).)  
GetDiscretePoints 
Get a set of points which represent the curve discretely based on a given granularity.
(Inherited from EllipsoidSurfaceCurve.)  
GetHashCode 
Returns a hash code for this instance, which is suitable for use in hashing algorithms and data structures like a hash table.
(Inherited from EllipsoidSurfaceCurve.)  
GetType  Gets the Type of the current instance. (Inherited from Object.)  
Heading 
Provides the heading at a location on the geodesic.
 
HeadingMotion 
Provides the heading and rate of change of heading at a location on the geodesic.
 
InterpolateUsingFraction 
Provides the location of a point at the indicated portion along the geodesic.
(Overrides EllipsoidSurfaceCurveInterpolateUsingFraction(Double).)  
InterpolateUsingSurfaceDistance 
Provides the location of a point at the indicated distance along the geodesic.
(Overrides EllipsoidSurfaceCurveInterpolateUsingSurfaceDistance(Double).)  
MemberwiseClone  Creates a shallow copy of the current Object. (Inherited from Object.)  
SurfaceMotion(Double) 
Converts the motion given in terms of motion on the geodesic curve to motion of the surface point.
 
SurfaceMotion(Double, Double, Double) 
Converts the motion given in terms of motion on the geodesic curve to motion of the surface point.
 
ToString  Returns a string that represents the current object. (Inherited from Object.) 