Table of Contents
Modifying C3D Parameters
C3D parameters can be modified in Visual3D in the File menu commands or via the Pipeline commands.
Modify Force Platform parameters
A common challenge for a manufacturer creating C3D formatted datafiles is the declaration of the Force Platform properties in the parameter section of the file.
There are also several minor inconsistencies in the way that manufacturers create the C3D files. Visual3D currently uses script commands to “FIX” these inconsistencies. Please contact C-Motion to determine if you need to process the C3D files that have been produced by your motion capture system.
The following minimal set of force platform parameters is assumed to exist in the C3D File.
PARAMETERS:FORCE_PLATFORM:
USED= number of force platforms used
TYPE= types of force platforms (1=default, 2= AMTI,Bertec, 3= Kistler)
ZERO= the range of frames for which a background noise level is calculated and then subtracted from each of the analog channels
CHANNEL= an array containing the ANALOG channels associated with the force platform
ORIGIN= The origin of the force platform in the force platform coordinate system (see the force platform manufacturer specifications.
CORNERS= The (x,y,z) coordinates of the force platform corners in the laboratory coordinate system. Note: that there is a specific ordering of the four corners.
This dialog is used to modify the force platform parameters (under the file menu in Visual3D) that specify how the ANALOG signals stored in the data file are to be transformed into the GRFORCE, COFP, and FREEMOMENT signals. Note: the number of places that you can go wrong.
Modify_Point_Parameters Pipeline Command
The command Modify_Point_Parameters will modify the POINT LABELS (e.g. Marker Names) in the C3D file. The LABELS listed will be applied to the POINT parameters in the order listed in the C3D file. If fewer LABELS are specified in the command than exist in the C3D file, then only the number of LABELS specified will be modified. The command is below:
Modify_Point_Parameters ! /POINT_LABELS=List of point labels in the order listed in the C3D file ! /OVERWRITE_C3D_FILE=FALSE Overwrite the C3D file TRUE or FALSE Note: If the parameter /OVERWRITE_C3D_FILE=TRUE C3D file on disk will be modified automatically (dialog browser will appear so you can select the C3D file to overwrite). If FALSE only the current workspace is modified, not the file on disk.
For example, the following command will modify the first 5 Point labels (eg. rename them):
Modify_Point_Parameters /POINT_LABELS= PT1+PT2+PT3+PT4+PT5 ! /OVERWRITE_C3D_FILE=FALSE ;
Modify_Analog_Parameters Pipeline Command
This command can be used to change a selection of the ANALOG parameters in a C3D file. There must be the same number of values in the LABELS, SCALE, and OFFSET entries. The command will modify the parameters in order. For example, if two entries are specified, the first two entries in the ANALOG parameters will be modified; the remaining parameters will remain the same.
Modify_Analog_Parameters | |
/Analog_Labels= | Enter the new Analog Labels in the order that they appear in the c3d file ANALOG PARAMETERS. |
/Analog_Gen_Scale= | Enter a scaling factor that is multiplied by the Analog_Scale factors that are applied to every signal. |
/Analog_Scale= | Enter a scaling factor that is multiplied by the Analog_Gen_Scale and applied to each signal. |
/Analog_Offset= | Enter an offset for each signal that is subtracted from each signal before the signal is scaled. |
/Analog_Baseline= | Enter a baseline offset for each signal that is subtracted from each signal before the signal is scaled. |
/Analog_Unit= | Enter the units for each analog signal. |
/Update_C3D_File= | (True or False) Update the C3D file on disk automatically. |
; |
Note: If UPDATE_C3D_FILE=TRUE the C3D file on disk will be modified automatically. If FALSE only the current workspace is modified, not the file on disk.
If the Analog_Scale or Analog_Labels parameter have fewer entries in the command than signals in the file, only the number parameters specified will be processed. In the order that the signals appear in the C3D PARAMETERS section of the file
For example, if only one Analog_Labels parameter is specified in the command, only the first Analog_Label will be modified.
The example below will modify the SCALE to 1.0 for the first 5 Analog Signals and automatically save the file to disk. No other Analog parameters will be modified.
Modify_Analog_Parameters ! /ANALOG_LABELS= ! /ANALOG_GEN_SCALE= /ANALOG_SCALE= 1.0+1.0+1.0+1.0+1.0 ! /ANALOG_OFFSET= ! /ANALOG_BASELINE= ! /UPDATE_C3D_FILE=TRUE ;
The /Analog_baseline parameter will accept expressions. The example below will modify the baseline value for the first analog signal using a metric signal METRIC::PROCESSED::OFFSET
Modify_Analog_Parameters ! /ANALOG_LABELS= ! /ANALOG_GEN_SCALE= ! /ANALOG_SCALE= ! /ANALOG_OFFSET= /ANALOG_BASELINE=METRIC::PROCESSED::OFFSET ! /UPDATE_C3D_FILE=FALSE ;
Common ANALOG Parameters
Common parameters that Visual3D expects to be in the ANALOG Section of the C3D File.
GEN_SCALE | Scaling factor that is multiplied by the Analog_Scale factors that are applied to every signal |
RATE | The sampling rate of the ANALOG data |
SCALE | A scaling factor for each signal that is multiplied by the Analog_Gen_Scale and applied to each signal. |
OFFSET | an offset for each signal that is subtracted from each signal before the signal is scaled. |
USED | The number of signals containing ANALOG data |
LABELS | The Label Names of the ANALOG data signals |
DESCRIPTIONS | The Descriptions of the ANALOG data signals. This information is rarely used by Visual3D. |
FORMAT | For integer data declares 12 bit or 16 bit data |
UNITS | The Units in which the ANALOG data signals are stored in the file. The default value is v (Volts) |
BASELINES | Used by Visual3D to define a baseline to be subtracted from each analog signal after the SCALE and OFFSET are applied. This value is typically computed during Real_Time streaming of the data. |
Other Parameters will be read by Visual3D but only in special circumstances will they be used.
The BASELINES parameter was introduced by C-Motion to accommodate Real-time streaming data. For streaming data there is no frame number from which to define a range for the ZERO parameter. This doesn't mean that the ZERO parameter should be ignored.
In Visual3D streaming there is a button to starting the ZERO range. In order to replicate the data for post-processing these baselines need to be saved with the C3D file and the ZERO parameter set to 0,0.