#[non_exhaustive]pub struct FootCycleMetrics {
pub loop_seam_ratio: Option<f64>,
pub has_real_stride: bool,
pub gait_phase: Option<f64>,
pub lr_amplitude_m: f64,
}Expand description
Foot-cycle metrics for one sampled clip.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.loop_seam_ratio: Option<f64>Wrap discontinuity of the feet (relative to hips) over the max of
the two seam-adjacent in-clip steps. ≈1.0 for a clean cyclic
loop; well above 1 for a seam pop. None when the clip has no
real stride (see Self::has_real_stride), or when a real
stride exists but seam / neighbour_step is not finite. The
whole-clip position finiteness gate above only bounds individual
coordinates, not the f32 squared-length arithmetic used to turn
two positions into a distance; a per-axis delta near f32::MAX
overflows that squaring to infinity even though every input
position was finite. That is the only known route to this case —
it requires magnitudes far outside any real animation.
has_real_stride: boolWhether the seam-adjacent neighbour step met the configured
minimum stride threshold, i.e. whether the clip has a real
stride to normalize the seam against. false means
Self::loop_seam_ratio’s absence is an expected “no subject”
(a planted/idle clip), not a derivation failure.
gait_phase: Option<f64>Cycle position [0,1) of the trough of the fundamental harmonic of the
left-minus-right foot-height signal — a stride-phase anchor encoding
handedness + cycle alignment. None when a side is missing, the
sampled signal has exact zero peak-to-peak swing, or the harmonic fit
fails.
lr_amplitude_m: f64Peak-to-peak swing of the L−R foot-height signal (metres); near zero means no detectable alternation and the phase is noise.
Trait Implementations§
Source§impl Clone for FootCycleMetrics
impl Clone for FootCycleMetrics
Source§fn clone(&self) -> FootCycleMetrics
fn clone(&self) -> FootCycleMetrics
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more