Go to start of banner

# Step 3 - Define the subject’s progression frame

The most common way to define the subject's progression frame is to align the axes of progression (ie, walking direction) with the anterior-posterior axis used for the individual segments. In our case, this means that the walking direction should be the Y axis.
If the lab has a walkway which is already aligned with one of the lab coordinate system's axes, then the task is to find out whether the subject walks along the +X, +Y, -X or -Y axis, and to calculate the progression frame that transforms the lab coordinate system to the one where the subject's forward direction is +Y.
There are several approaches to this – here is one example:

1. Add a new variable, name it PelvisOrigin.
2. Choose Function: Point and Transform: A from B's coordinates back to global.
3. For A, choose Type: Point and for Input Variable, choose Lab Origin.
4. For B, choose  Type: Segment and for Input Variable, choose pelvis_4X4. You have now defined a point that corresponds to the pelvis segment's origin. To do this, you have used the pre-defined Lab Origin point, which is simply {0, 0 , 0}, and transformed this point from the pelvis' local coordinates back to global.
5. Add a new variable named WalkingDirection.
6. For Function, choose Vector and From point A to point B.
7. For A, choose Type: Point, for Input Variable, choose PelvisOrigin, and for Timing, choose FirstValidFrame.
8. For B, choose Type: Point, for Input Variable, choose PelvisOrigin, and for Timing, choose LastValidFrame. Here, you've created a vector from a point to the same point, but evaluated at two different times, namely the first and the last valid point. Thus, as long as the subject has moved, you get a vector pointing in the direction in which the subject has moved.
9. Add a new variable named ProgressionFrame.
10. For Function, choose: Segment and Origin A, Y-Axis=lab axis closest to B, Z-Axis up.
11. For A, choose Type: Point and for Input Variable, choose PelvisOrigin.
12. For B, choose Type: Vector and for Input Variable, choose WalkingDirection. This defines a segment with its +Y direction aligned with the lab axis that has the best alignment with the WalkingDirection vector, which is exactly what is needed to define the progression angles.
13. Add a new variable named PelvisProgressionAngles.
14. For Function, choose Angle and Euler angle: XYZ between A and B.
15. For A, choose Segment and for Input Variable, choose ProgressionFrame.
16. For B, choose Segment and for Input Variable, choose pelvis_4X4. This defines the progression angle that we're interested in.