net.sf.geographiclib.GeodesicData Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of GeographicLib-Java Show documentation
Show all versions of GeographicLib-Java Show documentation
This is a Java implementation of the geodesic algorithms from
GeographicLib. This is a self-contained library to solve geodesic
problems on an ellipsoid model of the earth. It requires Java
version 1.7 or later.
/**
* Implementation of the net.sf.geographiclib.GeodesicData class
*
* Copyright (c) Charles Karney (2013) and licensed
* under the MIT/X11 License. For more information, see
* https://geographiclib.sourceforge.io/
**********************************************************************/
package net.sf.geographiclib;
/**
* The results of geodesic calculations.
*
* This is used to return the results for a geodesic between point 1
* (lat1, lon1) and point 2 (lat2, lon2). Fields
* that have not been set will be filled with Double.NaN. The returned
* GeodesicData objects always include the parameters provided to {@link
* Geodesic#Direct(double, double, double, double) Geodesic.Direct} and {@link
* Geodesic#Inverse(double, double, double, double) Geodesic.Inverse} and it
* always includes the field a12.
**********************************************************************/
public class GeodesicData {
/**
* latitude of point 1 (degrees).
**********************************************************************/
public double lat1;
/**
* longitude of point 1 (degrees).
**********************************************************************/
public double lon1;
/**
* azimuth at point 1 (degrees).
**********************************************************************/
public double azi1;
/**
* latitude of point 2 (degrees).
**********************************************************************/
public double lat2;
/**
* longitude of point 2 (degrees).
**********************************************************************/
public double lon2;
/**
* azimuth at point 2 (degrees).
**********************************************************************/
public double azi2;
/**
* distance between point 1 and point 2 (meters).
**********************************************************************/
public double s12;
/**
* arc length on the auxiliary sphere between point 1 and point 2
* (degrees).
**********************************************************************/
public double a12;
/**
* reduced length of geodesic (meters).
**********************************************************************/
public double m12;
/**
* geodesic scale of point 2 relative to point 1 (dimensionless).
**********************************************************************/
public double M12;
/**
* geodesic scale of point 1 relative to point 2 (dimensionless).
**********************************************************************/
public double M21;
/**
* area under the geodesic (meters2).
**********************************************************************/
public double S12;
/**
* Initialize all the fields to Double.NaN.
**********************************************************************/
public GeodesicData() {
lat1 = lon1 = azi1 = lat2 = lon2 = azi2 =
s12 = a12 = m12 = M12 = M21 = S12 = Double.NaN;
}
}