The POINT:SCALE parameter is a single floating-point value that records the scaling factor that must be applied to convert the signed integer 3D point values into the reference coordinate system values recorded by the POINT:UNITS parameter. If the C3D file contains 3D points saved in floating-point format then the POINT:SCALE value must be set to a negative value. This value is the POINT:SCALE value that will be applied if the C3D file is converted to integer format.
To retain the maximum resolution for integer data, the 3D scale factor should be about (max. absolute coordinate value used)/32000. This will allow all of the 3D point coordinates to be expressed within the range of a 16-bit signed integer. Since the SCALE value is required to interpret the 3D residual it is important that a sensible SCALE value is calculated even if the 3D information stored in floating-point format.
The SCALE parameter value can also be found stored in floating-point format in words 7-8 of the C3D file header. The POINT:SCALE header value should always be identical to the value stored in the parameter section.
Note that if an integer formatted C3D file is converted to a floating-point C3D file then it is important to preserve the absolute POINT:SCALE value, as this will allow the file to be transparently converted back into an integer form if desired. The POINT:SCALE value is also used to scale the 3D residual information when a C3D file is stored in integer or floating-point formats.