====== Event Maximum ====== ==== Overview ==== The **Event_Maximum** command is used to detect the maximum value of a specified signal within a defined event sequence or range and create an event at that location. This command can evaluate different components of a signal (X, Y, Z, Residual) and can apply offsets to shift the detected event if needed. * Useful for identifying peak forces, peak joint angles, or maximum accelerations during specific phases of a motion, such as between initial contact and toe-off during gait. * If the global maxima are needed, see the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Maximum|Event_Global_Maximum]] command * To review the difference between local and global maximum values please see [[Visual3D:Documentation:Pipeline:General_Information:Global_vs_Loca_Max_and_Min|here]] ==== Pipeline Command ==== The command below is as seen in the Visual3D application: Event_Maximum /RESULT_EVENT_NAME= ! /SIGNAL_TYPES= ! /SIGNAL_FOLDER=ORIGINAL ! /SIGNAL_NAMES= ! /SIGNAL_COMPONENTS= ! /FRAME_OFFSET=0 ! /TIME_OFFSET= ! /EVENT_SEQUENCE= ! /EXCLUDE_EVENTS= ! /EVENT_SEQUENCE_INSTANCE=0 ! /EVENT_SUBSEQUENCE= ! /SUBSEQUENCE_EXCLUDE_EVENTS= ! /EVENT_SUBSEQUENCE_INSTANCE=0 ! /EVENT_INSTANCE=0 ! /FRAME_WINDOW=8 ! /THRESHOLD= ; ==== Command Parameters ==== The following table shows the command parameters and descriptions: |**Parameter** |**Description**| |**/RESULT_EVENT_NAME=**|The name assigned to the detected peak event.| |**!/SIGNAL_TYPES=**|Indicates type of signal analyzed.| |**!/SIGNAL_FOLDER=ORIGINAL**|Specifies the folder containing the target signal (typically ORIGINAL)| |**!/SIGNAL_NAMES=**|The name of the signal to analyze.| |**!/SIGNAL_COMPONENTS**|Which components to evaluate (X, Y, Z, Residual)| |**!/FRAME_OFFSET=**|Optional offset in frames to shift the detected event.| |**!/TIME_OFFSET=**|Optional offset in seconds to shift the detected event.| |**!/EVENT_SEQUENCE=**|Defines the sequence of events used.| |**!/EXCLUDE_EVENTS=**|Events to exclude within the sequence.| |**!/EVENT_SEQUENCE_INSTANCE=0**|Specifies which instance of the sequence to evaluate (0 to consider ALL)| |**!/EVENT_SUBSEQUENCE=**|Defines a smaller sequence within the main even sequence.| |**!/SUBSEQUENCE_EXCLUDE_EVENTS**|Events to exclude from the subsequence.| |**!/EVENT_SUBSEQUENCE_INSTANCE=0**|Specifies which instance of the subsequence to evaluate.| |**!/EVENT_INSTANCE=**|Specifies which instance of the event to label (0 for all, positive for first occurrences, negative for last occurrences).| |**!/FRAME_WINDOW=**|Number of frames around the maximum that must satisfy the threshold.| |**!/THRESHOLD=**|Defines the minimum value the signal must reach to qualify as a peak.| ==== Dialog ==== The command can be edited in a text editor or in the dialog. To edit in the dialog, click on the **Edit** button in the pipeline workshop or double-click on the pipeline command. The dialog is shown below: {{:visual3d:documentation:pipeline:event_commands:event_max_dialog.png?400|}} ---- ==== Examples ==== The following examples will go through the use of the **Event_Maximum** command in the Visual3D application. === Example 1: Simple Use Case === The first example will cover the command using the dialog as well as the command text. To create the RKFlex_MaxLocal event using the Event_Maximum dialog box: 1. Add the **Event_Maximum** command to the pipeline. Then, enter information into dialog box: **Event_Name:** RKFlex_MaxLocal\\ **Select Frame Offset:** 0\\ **Signal Components:** X\\ **Event Sequence:**RHS -> RHS (use arrows to move from defined events list into sequence.) \\ **Event Sequence Instance:**0\\ {{:Event_Max_RKFlex_MaxLocal.jpg?400}} 2. Close the dialog, on the Signals and Events tab, select the desired signal from the data tree, in this case **Right_Knee_Angle**. Navigate into the LINK_MODEL_BASED items folder, and select the checkbox beside the signal. 3. Open the pipeline workshop again, and then click on **Import Selected Signals**.\\ {{:Event_Max_RKFlex_MaxLocal_Import.jpg?600}} **RKFlex_Max** will be created at the minimum value during the gait cycle within the specified frame window. ---- ==== Notes ==== === Version 5 === In version 5 the command has been extended to include the Event_Sequence and Exclude_Events parameters. |{{:EventMaximumDlg5.jpg}}| Event_Maximum /RESULT_EVENT_NAME=EVENT_MAX /SIGNAL_TYPES=TARGET /SIGNAL_FOLDER=ORIGINAL /SIGNAL_NAMES=LFT2 /SIGNAL_COMPONENTS=Z /FRAME_OFFSET=0 !/TIME_OFFSET= !/EVENT_SEQUENCE= !/EXCLUDE_EVENTS= !/EVENT_SEQUENCE_INSTANCE=0 !/EVENT_SUBSEQUENCE= !/SUBSEQUENCE_EXCLUDE_EVENTS= !/EVENT_INSTANCE=0 !/FRAME_WINDOW-8 /THRESHOLD=0.14 ; | * Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Maximum#Examples|Event_Global_Maximum]] page. * If /Threshold is empty, all local maximum are identified. * If /Threshold has a value or expression, only local maximum that are greater than the threshold are identified. === Version 4 === Event_Maximum /Signal_Types=The type of signal to be evaluated /Signal_Names=The names of the signals to be evaluated /Signal_Folder=The name of the signal folder /Event_Name=The name to be given to the threshold event /Select_X=(True or False)Use this component of the signal /Select_Y=(True or False)Use this component of the signal /Select_Z=(True or False)Use this component of the signal /Frame_Window=The range of frames of data that must be below the maximum /Start_At_Event=The search begins from the start event /End_At_Event=The search ends at the end event /Event_Instance= ; Dialog that pops up when pipeline selection is edited by double clicking with the left mouse button. {{:MinMaxDlg.jpg}}