suboptimumg.track.gps#
- suboptimumg.track.gps.resample_xy_uniform(x_m, y_m, distance_step, smoothing=0.0)[source]#
Fit a B-spline through Cartesian XY coordinates and resample at a uniform arc-length spacing.
The spline is fit in XY space (not lat/lon) so the resulting points are genuinely equally spaced in meters.
- Parameters:
x_m (NDArray[float64]) – East coordinates in meters (clean, no NaNs)
y_m (NDArray[float64]) – North coordinates in meters (clean, no NaNs)
distance_step (float) – Desired spacing between output points in meters
smoothing (float) – Spline smoothing factor (0 = interpolating spline)
- Returns:
NDArray[float64] – x_uniform - Uniformly-spaced East coordinates in meters
NDArray[float64] – y_uniform - Uniformly-spaced North coordinates in meters
NDArray[float64] – cumulative_dist - Arc-length distances at each output point (meters)
Any – tck - Scipy B-spline representation for later evaluation
- Return type:
Tuple[ndarray[tuple[Any, …], dtype[float64]], ndarray[tuple[Any, …], dtype[float64]], ndarray[tuple[Any, …], dtype[float64]], Any]