visual3d:documentation:pipeline:event_commands:event_between
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:documentation:pipeline:event_commands:event_between [2025/02/13 19:44] – [Overview] wikisysop | visual3d:documentation:pipeline:event_commands:event_between [2025/04/16 15:46] (current) – Revised section header levels to reflect in the ToC. wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Event Between ====== | ====== Event Between ====== | ||
- | ==== Overview ==== | + | ===== Overview |
The **Event_Between** pipeline command __creates a new event label based on the time interval between two existing events in the C3D File (i.e. between the first and last events).__ This command is useful when analyzing motion data that requires identifying specific time points between known events. | The **Event_Between** pipeline command __creates a new event label based on the time interval between two existing events in the C3D File (i.e. between the first and last events).__ This command is useful when analyzing motion data that requires identifying specific time points between known events. | ||
Line 8: | Line 8: | ||
* Specify whether the new event should be placed at the Start, End, or Midpoint of the interval. | * Specify whether the new event should be placed at the Start, End, or Midpoint of the interval. | ||
- | + | ===== Pipeline Command ===== | |
- | + | ||
- | ==== Pipeline Command ==== | + | |
- | The command shown below is how it is shown in the Visual3D application. | + | |
< | < | ||
Line 24: | Line 21: | ||
</ | </ | ||
- | **NOTE:** Range Instance Examples | + | ===== Command Parameters ===== |
- | \\ | + | The following table shows the command parameters: |
- | RANGE_INSTANCE=0 -> create the event in all instances of the Event_Sequence | + | |
- | \\ | + | |
- | RANGE_INSTANCE=n -> create | + | |
- | \\ | + | |
- | If n<0, count instances from last Event_Sequence; | + | |
- | ==== Command Parameters ==== | + | |**Parameter**|**Parameter Description** | |
+ | |**/ | ||
+ | |! / | ||
+ | |! / | ||
+ | |! / | ||
+ | |**! / | ||
+ | |**! / | ||
+ | |**! / | ||
- | |**Event_Between** | + | Offsets |
- | |/ | + | |
- | |! / | + | |
- | |! / | + | |
- | |! / | + | |
- | |! / | + | |
- | |! / | + | |
- | |! / | + | |
- | \\ | + | |
- | **Notes**: \\ | + | |
- | Only one of the parameters | + | |
- | By default, | + | |
- | In order to specify a TIME_OFFSET or PERCENT_OFFSET, | + | |
- | **EXAMPLE-** A percent (%) offset of 50 percent between RON and ROFF would be:\\ | + | ===== Dialog |
- | + | {{ : | |
- | Event_Between | + | |
- | / | + | |
- | ! / | + | |
- | ! / | + | |
- | ! / | + | |
- | / | + | |
- | / | + | |
- | / | + | |
- | ; | + | |
- | \\ | + | |
- | ==== Dialog | + | |
After adding the **Event_Between** command into the pipeline on the Visual3D application, | After adding the **Event_Between** command into the pipeline on the Visual3D application, | ||
+ | * **Event Parameters**: | ||
+ | * **Event Selection and Filtering**: | ||
+ | * **Range Instance Selection**: | ||
- | {{:Event_Between.jpg?350}} | + | ---- |
- | \\ | + | ===== Examples ===== |
+ | The following examples will go through the use of the **Event_Between** command in the Visual3D application. | ||
- | ==== Event_Between Examples | + | ==== Example 1: Event Between Gait Events |
+ | This pipeline will be showcasing the use of the **Event_Between** command when we want to place an event between the LHS and LTO in our trial, determined by the starting command, [[visual3d: | ||
- | A dynamic trial has two pre-existing | + | As a reminder, force assignments must exist in a dynamic trial in order for gait events |
- | {{: | + | |
- | \\ | + | |
- | === EXAMPLE 1 - Range_Instance = 0 === | ||
- | * RANGE_INSTANCE = 0 -> all instances of the Event_Sequence will be used | + | {{: |
- | * FRAME_OFFSET = 10 -> the new event will be created 10 frames after the first event | + | |
- | + | The following pipeline can be used to generate the "BTWN" event. Parameter values used are listed below: | |
- | Event_Between | + | |
- | / | + | |
- | | + | |
- | | + | |
- | !/ | + | |
- | /FRAME_OFFSET=10 | + | |
- | !/ | + | |
- | !/ | + | |
- | ; | + | |
- | \\ | + | < |
+ | Automatic_Gait_Events | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
- | === EXAMPLE 2 - Range_Instance | + | Event_Between |
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
- | * RANGE_INSTANCE = 2 -> the 2nd instance of the Range will be used | + | After running this pipeline, we can highlight this event to show the updated graph with the new event label. |
- | + | {{: | |
- | Event_Between | + | |
- | / | + | |
- | !/ | + | |
- | / | + | |
- | !/ | + | |
- | / | + | |
- | !/ | + | |
- | !/ | + | |
- | ; | + | |
- | \\ | + | |
- | === EXAMPLE 3 - Range_Instance | + | ==== Example 2: Identify a MidSwing Gait Event ==== |
- | * RANGE_INSTANCE = -1 -> the last instance | + | This next example provides a more in-depth use of the command in a larger pipeline. Here, the objective is to use **Event_Between** to identify the **MidSwing** event between Left Toe Off (LTO) and Left Heel Strike (LHS), then use additional commands to: |
+ | - Calculate hip and knee angles at the MidSwing event. | ||
+ | - Create a new event when knee flexion surpasses a threshold. | ||
- | + | First, we will use the same step from the previous example to generate gait events for the data, and then use the command to create an event named " | |
- | Event_Between | + | |
- | / | + | |
- | !/ | + | |
- | / | + | |
- | !/ | + | |
- | / | + | |
- | !/ | + | |
- | !/ | + | |
- | ; | + | |
- | \\ | + | < |
+ | Automatic_Gait_Events | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
- | **Note:** this is exactly the same result as the example above because for this example signal the last instance | + | Event_Between |
+ | / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
+ | Next, we must output signals Left_Hip_Angle and Left_Knee_Angle can be used for further analysis. | ||
+ | < | ||
+ | Compute_Model_Based_Data | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! /AXIS1=X | ||
+ | ! /AXIS2=Y | ||
+ | ! /AXIS3=Z | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | Compute_Model_Based_Data | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! /AXIS1=X | ||
+ | ! /AXIS2=Y | ||
+ | ! /AXIS3=Z | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | Following the creation of the hip and knee angle signals for the left leg during the gait cycle, the **Metric_Signal_Value_At_Event** command is used to extract the values specifically at the MidSwing event | ||
+ | |||
+ | < | ||
+ | Metric_Signal_Value_At_Event | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | |||
+ | Metric_Signal_Value_At_Event | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | </ | ||
+ | |||
+ | Following this, the [[visual3d: | ||
+ | < | ||
+ | Event_Threshold | ||
+ | / | ||
+ | / | ||
+ | ! / | ||
+ | / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | /THRESHOLD= 45 | ||
+ | ! /ON_ASCENT= | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ! / | ||
+ | ; | ||
+ | </ |
visual3d/documentation/pipeline/event_commands/event_between.1739475868.txt.gz · Last modified: 2025/02/13 19:44 by wikisysop