Java Distance Calculate distanceMeter(double prevLat, double prevLon, double currentLat, double currentLon)

Here you can find the source of distanceMeter(double prevLat, double prevLon, double currentLat, double currentLon)

Description

Calculate the distance between two points (Latitude, Longitude)

License

Open Source License

Declaration

private static double distanceMeter(double prevLat, double prevLon, double currentLat, double currentLon) 

Method Source Code

//package com.java2s;
/*/*from  w w  w  . j  a  v a 2  s. c o  m*/
?Developed with the contribution of the European Commission - Directorate General for Maritime Affairs and Fisheries
? European Union, 2015-2016.
    
This file is part of the Integrated Fisheries Data Management (IFDM) Suite. The IFDM Suite is free software: you can
redistribute it and/or modify it under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or any later version. The IFDM Suite is distributed in
the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details. You should have received a
copy of the GNU General Public License along with the IFDM Suite. If not, see <http://www.gnu.org/licenses/>.
 */

public class Main {
    private static int EARTH_RADIUS_METER = 6371000;

    /**
     * Calculate the distance between two points (Latitude, Longitude)
     */
    private static double distanceMeter(double prevLat, double prevLon, double currentLat, double currentLon) {
        double lat1Rad = Math.toRadians(prevLat);
        double lat2Rad = Math.toRadians(currentLat);
        double deltaLonRad = Math.toRadians(currentLon - prevLon);

        return Math.acos(Math.sin(lat1Rad) * Math.sin(lat2Rad)
                + Math.cos(lat1Rad) * Math.cos(lat2Rad) * Math.cos(deltaLonRad)) * EARTH_RADIUS_METER;
    }
}

Related

  1. distanceInRadians(double latitude1, double longitude1, double latitude2, double longitude2)
  2. distanceKM(double lat1, double lng1, double lat2, double lng2)
  3. distanceLevenshtein(CharSequence s, CharSequence t)
  4. distanceLongitude(double latitude, double east, double west)
  5. distanceMat(double[][] m1, double[][] m2)
  6. distanceNd(double[] p1, double[] p2, double[] scratchSpace)
  7. distancePointToLine(final double x0, final double y0, final double x1, final double y1, final double xp, final double yp)
  8. distancePointToPlane(final double x0, final double y0, final double z0, final double[] normal, final double xp, final double yp, final double zp)
  9. distancePointToPoint(final double x1, final double y1, final double x2, final double y2)