A meta-command is a Visual3D pipeline script with additional header lines so that you can pass in parameter values. It has a .v3m extension instead of .v3s. The meta-command should be stored in a folder labelled Meta-Commands, which is located in the Visual3D Plugins Folder. You will have to create this folder yourself - it is not part of a default installation. The header in the meta-command defines the data that should be passed. A meta-command can be used just like any other command in a pipeline script, and can be used to simply supply values, or it can be used as a macro that includes pipeline commands as well.
When Visual3D starts, it scans the meta-command directory (identified in the Edit→Preferences dialog) and adds any meta-commands it finds to the pipeline editing dialog. NOTE: This means that any meta-command scripts added to the Plugins/Meta-Commands folder after launch will not be available until Visual3D is closed and restarted.
! BEGIN_META //- This line is a mandatory identifier to signal Visual3D ! META_CMD_NAME = x //- Where x is the name you want your new command to have
A meta-command can have multiple parameter specifications. Each one formatted:
! META_PARAM = param_name: type : default_parameter : optionality
! END_META //- The mandatory end identifier
For example:
! BEGIN_META ! META_CMD_NAME=Terry_Rt_Plantar_Flexors_Group ! META_PARAM= MODEL_NAME : string ::yes ! META_PARAM= RIGHT_THIGH_MARKERS : string ::yes ! META_PARAM= RIGHT_SHANK_MARKERS: string ::yes ! META_PARAM= RIGHT_FOOT_MARKERS: string ::yes ! END_META
This command will appear in the Visual3D Pipeline Dialog list box in a folder labeled Meta_Commands. The command will be similar to the following:
Terry_Rt_Plantar_Flexors_Group /MODEL_NAME= *model.mdh /RIGHT_THIGH_MARKERS= RGT+RLK+RMK /RIGHT_SHANK_MARKERS= LTT +RLA+RMA /RIGHT_FOOT_MARKERS= RHL+RFT2+RFT1 ;
Meta-commands are stored on the disk, not in the workspace. In order to edit a meta-command it is necessary to open the file in a text editor such as Notepad++. The pipeline stores a reference to the meta-command file, rather than loading the meta-command.
Following is a list of Meta-Command examples that have been implemented elsewhere in the wiki: