From 9129b6f4eb6ab58a83107e47c888bb4a3bbf0f90 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Tue, 20 Jun 2017 13:44:35 +0500 Subject: - Combine 'DistanceHandler' and 'CoordinatesHandler' - Move 'DistanceHandler' closer to beginning of pipeline - Use KEY_DISTANCE instead of distance recalculation --- src/org/traccar/FilterHandler.java | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'src/org/traccar/FilterHandler.java') diff --git a/src/org/traccar/FilterHandler.java b/src/org/traccar/FilterHandler.java index f2a80a98f..973dfc205 100644 --- a/src/org/traccar/FilterHandler.java +++ b/src/org/traccar/FilterHandler.java @@ -15,7 +15,6 @@ */ package org.traccar; -import org.traccar.helper.DistanceCalculator; import org.traccar.helper.Log; import org.traccar.helper.UnitsConverter; import org.traccar.model.Position; @@ -111,19 +110,14 @@ public class FilterHandler extends BaseDataHandler { private boolean filterDistance(Position position, Position last) { if (filterDistance != 0 && last != null) { - double distance = DistanceCalculator.distance( - position.getLatitude(), position.getLongitude(), - last.getLatitude(), last.getLongitude()); - return distance < filterDistance; + return position.getDouble(Position.KEY_DISTANCE) < filterDistance; } return false; } private boolean filterMaxSpeed(Position position, Position last) { if (filterMaxSpeed != 0 && last != null) { - double distance = DistanceCalculator.distance( - position.getLatitude(), position.getLongitude(), - last.getLatitude(), last.getLongitude()); + double distance = position.getDouble(Position.KEY_DISTANCE); long time = position.getFixTime().getTime() - last.getFixTime().getTime(); return UnitsConverter.knotsFromMps(distance / time) > filterMaxSpeed; } -- cgit v1.2.3