aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/helper/DistanceCalculator.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/traccar/helper/DistanceCalculator.java')
-rw-r--r--src/org/traccar/helper/DistanceCalculator.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/org/traccar/helper/DistanceCalculator.java b/src/org/traccar/helper/DistanceCalculator.java
index 7ba5044bc..d191a27af 100644
--- a/src/org/traccar/helper/DistanceCalculator.java
+++ b/src/org/traccar/helper/DistanceCalculator.java
@@ -15,7 +15,10 @@
*/
package org.traccar.helper;
-public class DistanceCalculator {
+public final class DistanceCalculator {
+
+ private DistanceCalculator() {
+ }
private static final double EQUATORIAL_EARTH_RADIUS = 6378.1370;
private static final double DEG_TO_RAD = Math.PI / 180;
@@ -23,8 +26,8 @@ public class DistanceCalculator {
public static double distance(double lat1, double lon1, double lat2, double lon2) {
double dlong = (lon2 - lon1) * DEG_TO_RAD;
double dlat = (lat2 - lat1) * DEG_TO_RAD;
- double a = Math.pow(Math.sin(dlat / 2), 2) +
- Math.cos(lat1 * DEG_TO_RAD) * Math.cos(lat2 * DEG_TO_RAD) * Math.pow(Math.sin(dlong / 2), 2);
+ double a = Math.pow(Math.sin(dlat / 2), 2)
+ + Math.cos(lat1 * DEG_TO_RAD) * Math.cos(lat2 * DEG_TO_RAD) * Math.pow(Math.sin(dlong / 2), 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double d = EQUATORIAL_EARTH_RADIUS * c;
return d * 1000;