User Tools

Site Tools


visual3d:documentation:pipeline:file_commands:update_workspaces_example

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
visual3d:documentation:pipeline:file_commands:update_workspaces_example [2024/06/19 13:37] – removed sgrangervisual3d:documentation:pipeline:file_commands:update_workspaces_example [2024/07/17 15:45] (current) – created sgranger
Line 1: Line 1:
 +====== Update Workspaces Example ======
 +
 +===== Introduction =====
 +
 +You can use a pipeline to loop over a series of CMZ files to update them (i.e. calculate measures you decided to create after creating the CMZ files).
 +
 +This can also be done by creating a series of smaller scripts (ex. GRF_Impulse.v3s, Temporal_Distance_Metrics.v3s) and storing them in one folder. The benefit of creating a series of smaller scripts is that they're often easier to test and debug than one long script. Note that if name the scripts with numerals in front, they will be run in alphabetical order, so you can force the order the sub scripts are run (ex. 01_GRF_Impulse.v3s, 02_Temporal_Distance_Metrics.v3s).
 +
 +You can copy/paste the example below into Visual3D/a text file or [[https://www.has-motion.com/download/Katie/FastFacts/CMO_Loop.v3s|download the script here]].
 +
 +==== Example ====
 +
 +<code>
 +! ============================================================================================
 +! Update a group of CMZ files
 +! ============================================================================================
 +
 +! --------------------------------------------------------------------------------------------
 +! Pipeline Parameters
 +! --------------------------------------------------------------------------------------------
 +
 +! Folder path containing data to be updated
 +! Note: This would be the top level folder:
 +!   C:\Data
 +! The data would then be in subfolders:
 +!   C:\Data\Sub01
 +!   C:\Data\Sob02
 +
 +Set_Pipeline_Parameter
 +/PARAMETER_NAME=FOLDER_PATH
 +/PARAMETER_VALUE=C:\Data
 +! /PARAMETER_VALUE_SEARCH_FOR=
 +! /PARAMETER_VALUE_REPLACE_WITH=
 +! /PARAMETER_VALUE_PREFIX=
 +! /PARAMETER_VALUE_APPEND=
 +! /MULTI_PASS=FALSE
 +;
 +
 +! Specify where the scripts you want to run on each CMZ file are located
 +
 +Set_Pipeline_Parameter
 +/PARAMETER_NAME=SCRIPT_FOLDER_PATH
 +/PARAMETER_VALUE=C:\Data\Update_Scripts
 +! /PARAMETER_VALUE_SEARCH_FOR=
 +! /PARAMETER_VALUE_REPLACE_WITH=
 +! /PARAMETER_VALUE_PREFIX=
 +! /PARAMETER_VALUE_APPEND=
 +! /MULTI_PASS=FALSE
 +;
 +
 +! --------------------------------------------------------------------------------------------
 +! Get List of CMZ Files to Update
 +! --------------------------------------------------------------------------------------------
 +
 +Set_Pipeline_Parameter_To_List_Of_Files
 +/PARAMETER_NAME=CMZ_LIST
 +/FOLDER=::FOLDER_PATH&
 +/SEARCH_SUBFOLDERS=TRUE
 +/FILE_MASK=*.cmz
 +;
 +
 +! --------------------------------------------------------------------------------------------
 +! Get List of Scripts to run
 +! --------------------------------------------------------------------------------------------
 +
 +Set_Pipeline_Parameter_To_List_Of_Files
 +/PARAMETER_NAME=SCRIPT_LIST
 +/FOLDER=::SCRIPT_FOLDER_PATH&
 +/SEARCH_SUBFOLDERS=TRUE
 +/FILE_MASK=*.v3s
 +;
 +
 +! --------------------------------------------------------------------------------------------
 +! Process Each CMZ
 +! --------------------------------------------------------------------------------------------
 +
 +For_Each
 +/ITERATION_PARAMETER_NAME=CURRENT_CMZ
 +! /ITERATION_PARAMETER_COUNT_NAME=
 +/ITEMS=::CMZ_LIST
 +;
 +
 +    ! Clear the Workspace
 +
 +    File_New
 +
 +    ;
 +
 +    ! Open one CMZ file
 +
 +    File_Open
 +    /FILE_NAME=::CURRENT_CMZ
 +    ! /SUFFIX=
 +    ! /SET_PROMPT=File_Open
 +    ! /FILTER=
 +    ;
 +
 +    ! --------------------------------------------------------------------------------------------
 +    ! Run Scripts
 +    ! --------------------------------------------------------------------------------------------
 +
 +    ! Loop over each script in the Update Script folder
 +
 +    For_Each
 +    /ITERATION_PARAMETER_NAME=CURRENT_SCRIPT
 +    ! /ITERATION_PARAMETER_COUNT_NAME=
 +    /ITEMS=::SCRIPT_LIST
 +    ;
 +
 +        ! Run the current script
 +
 +        Call_Script 
 +        /SCRIPT_FILE_NAME=::CURRENT_SCRIPT
 +        ! /SCRIPT_PATH=
 +        ;
 +
 +    End_For_Each
 +    /ITERATION_PARAMETER_NAME=CURRENT_SCRIPT
 +    ;
 +
 +    ! Save CMZ File
 +
 +    File_Save
 +    ! /SET_PROMPT=Save CMO file
 +    ;
 +
 +    ! Clear the workspace
 +
 +    File_New
 +
 +    ;
 +
 +End_For_Each
 +/ITERATION_PARAMETER_NAME=CURRENT_CMZ
 +;
 +</code>
 +
 +
  
visual3d/documentation/pipeline/file_commands/update_workspaces_example.1718804241.txt.gz · Last modified: 2024/06/19 13:37 by sgranger