Skip to main content

calculate_mean_spacing

Function calculate_mean_spacing 

Source
pub fn calculate_mean_spacing(gnss_positions: &[GnssPosition]) -> f64
Expand description

Calculate mean spacing between consecutive GNSS positions

Uses distance column values when available (from wheel sensors), otherwise falls back to geometric distance calculation. This is used for resampling to determine optimal sampling interval.

§Arguments

  • gnss_positions - Slice of GNSS positions in temporal order

§Returns

Mean distance in meters between consecutive positions, or 0.0 if fewer than 2 positions

§Examples

use tp_lib_core::GnssPosition;
use chrono::Utc;

let positions = vec![
    GnssPosition::new(50.8503, 4.3502, Utc::now().into(), "EPSG:4326".to_string())?,
    GnssPosition::new(50.8513, 4.3512, Utc::now().into(), "EPSG:4326".to_string())?,
];

let mean_spacing = tp_lib_core::calculate_mean_spacing(&positions);
assert!(mean_spacing > 0.0);