MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Kinesis::TurningProfile Struct Reference

A path's heading as a function of arc length, at a fixed sample count. More...

#include <PathShape.hpp>

+ Collaboration diagram for MayaFlux::Kinesis::TurningProfile:

Public Attributes

float initial_heading { 0.0F }
 Heading of the first segment, before any invariance subtraction.
 
float length { 0.0F }
 Total arc length of the source path.
 
std::vector< float > turning
 Unwrapped heading at each arc-length sample.
 

Detailed Description

A path's heading as a function of arc length, at a fixed sample count.

The shape descriptor. Sampling heading at evenly spaced positions along the path discards where the path was drawn and how fast, and retains only how it bent, so two strokes of the same shape at different sizes in different corners of the space produce the same profile. Comparing shapes then reduces to comparing two equal-length vectors of angles.

Headings are unwrapped rather than confined to a principal range, so a path that turns through more than one revolution reads as continuing to climb rather than folding back on itself. A profile built with rotation invariance has its first heading subtracted from every sample, which makes a shape match regardless of the direction it was started in; without it, orientation is part of the identity of the shape, and the same arc drawn upward and downward are different things. Which is correct is a decision about the meaning being defined, not a property of the mathematics, so it is a parameter.

initial_heading and length are retained rather than discarded so a caller can reintroduce the orientation and scale the profile threw away, either as separate axes of a feature vector or to recover the approximate original.

Definition at line 180 of file PathShape.hpp.


The documentation for this struct was generated from the following file: