UNPKG

@codewithvincent/react-native-gps-filter

Version:

Kalman-based adaptive GPS filter for React Native.

48 lines (47 loc) 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.kalmanFilterOptions = exports.GPS_SPEED_THRESHOLD = exports.KALMAN_REJECT_THRESHOLD = void 0; exports.getAdaptiveThresholds = getAdaptiveThresholds; exports.KALMAN_REJECT_THRESHOLD = 3; exports.GPS_SPEED_THRESHOLD = 0.1; exports.kalmanFilterOptions = { R: 0.01, Q: 10, A: 1, B: 0, C: 1, }; function getAdaptiveThresholds(speed) { if (speed < 0.3) { return { minDelta: 1, maxDelta: 5, maxAllowedDelta: 20, mode: "stationary", }; } else if (speed < 2) { return { minDelta: 1.5, maxDelta: 30, maxAllowedDelta: 40, mode: "walking", }; } else if (speed < 5) { return { minDelta: 2, maxDelta: 50, maxAllowedDelta: 60, mode: "running", }; } else { return { minDelta: 3, maxDelta: 120, maxAllowedDelta: 100, mode: "driving", }; } }