#[non_exhaustive]pub struct ClipMeasurements {Show 19 fields
pub duration_s: f64,
pub frame_count: u32,
pub animated_bones: Vec<String>,
pub bone_channels: Vec<BoneChannelCoverage>,
pub bone_rotation_range_deg: BTreeMap<String, f64>,
pub loop_continuity: Option<LoopContinuityMeasurement>,
pub loop_continuity_availability: MeasurementAvailability,
pub loop_endpoint_mode: Option<LoopEndpointMode>,
pub loop_endpoint_mode_availability: MeasurementAvailability,
pub frame_grid: Option<FrameGridMeasurement>,
pub frame_grid_availability: MeasurementAvailability,
pub loop_seam_ratio: Option<f64>,
pub loop_seam_ratio_availability: MeasurementAvailability,
pub gait: Option<GaitMeasurement>,
pub gait_availability: MeasurementAvailability,
pub root_trajectory: Option<RootTrajectoryMeasurement>,
pub root_trajectory_availability: MeasurementAvailability,
pub speed_mps: Option<f64>,
pub speed_mps_availability: MeasurementAvailability,
}Expand description
Measurements for one clip in the measure output map.
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.duration_s: f64Clip duration in seconds.
frame_count: u32Keyframe count of the longest channel. This also selects the uniform metric-grid resolution, but it is not an authored frame-rate value.
animated_bones: Vec<String>Bones with at least one structurally valid keyframed channel, sorted.
bone_channels: Vec<BoneChannelCoverage>Per-bone local TRS channel coverage in skeleton-index order.
Duplicate tracks for the same (bone, property) pair contribute one
coverage fact; this is a set of present channels, not a track count.
bone_rotation_range_deg: BTreeMap<String, f64>Max rotation deviation (degrees) of each structurally valid rotation
channel from its first key. Bones under
MIN_RECORDED_ROTATION_DEG are omitted.
loop_continuity: Option<LoopContinuityMeasurement>Model-space pose closure plus seam-adjacent linear- and angular-velocity continuity for every skeleton bone. Not applicable only when the skeleton has no bones; otherwise available without rig-role resolution.
loop_continuity_availability: MeasurementAvailabilityAvailability of Self::loop_continuity.
loop_endpoint_mode: Option<LoopEndpointMode>Endpoint convention for a clip declared loop = true. Not applicable
for clips not declared as loops.
loop_endpoint_mode_availability: MeasurementAvailabilityAvailability of Self::loop_endpoint_mode.
frame_grid: Option<FrameGridMeasurement>Declared FPS-grid evidence. Not applicable when the clip has no declared/configured FPS expectation.
frame_grid_availability: MeasurementAvailabilityAvailability of Self::frame_grid.
loop_seam_ratio: Option<f64>Loop wrap discontinuity ratio; needs hips + foot roles and a
real stride. See crate::metrics::FootCycleMetrics.
loop_seam_ratio_availability: MeasurementAvailabilityAvailability of Self::loop_seam_ratio. NotApplicable when the
Hips + foot role domain is unresolved, or when it resolves but the
clip has no real stride to normalize the seam against (a
planted/idle clip). Unavailable when the role domain resolved but
the grid was otherwise unusable (e.g. too few frames), or a real
stride’s ratio could not be derived; see
crate::metrics::FootCycleMetrics::loop_seam_ratio.
gait: Option<GaitMeasurement>Gait stride anchor; needs the Hips role plus a left or right foot role.
gait_availability: MeasurementAvailabilityAvailability of Self::gait.
root_trajectory: Option<RootTrajectoryMeasurement>Directional horizontal, signed vertical, vertical-excursion, and yaw evidence for the resolved Root role (falling back to Hips only when Root is unresolved).
root_trajectory_availability: MeasurementAvailabilityAvailability of Self::root_trajectory.
speed_mps: Option<f64>Horizontal root displacement ÷ duration (m/s); needs the Root (or Hips) role.
speed_mps_availability: MeasurementAvailabilityAvailability of Self::speed_mps.
Trait Implementations§
Source§impl Clone for ClipMeasurements
impl Clone for ClipMeasurements
Source§fn clone(&self) -> ClipMeasurements
fn clone(&self) -> ClipMeasurements
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more