rigidBody
Description
Calculates for a rigid body object containing positions and rotations data for selected markers over the selected time ranges and places it on the primary selection.
The rigidBody command helps you:
- Intelligently recover lost data that belongs within a marker relationship that may be thought of as "rigid"
- Generate rotational and translation data to define the movement of the rigid body
Rigid bodies provide the ability to convert the independent translations of a group of marker objects to a set of translational and rotational information applied to a single object. A rigid body defines its local coordinate system based upon the selection order of the markers chosen to create it. The main axis ( X ) is defined by the first and second selected markers, with the first selected being the origin location of the body. The Y-axis pointing direction of the body tries to match the vector running from the first selection to the third selected marker.
Use of the nonRigidTolerance
option can prevent errant marker behavior from adversely affecting the behavior of the rigid body.
Understanding rigid bodies is important for the effective use of Shogun Post's marker editing capabilities as well as its skeletal solving functionality.
Functional area
Data manipulators
Command syntax
Syntax
rigidBody [-all] [-baseFrame integer] [-useCurrentFrame] [-origin string] [-nonRigidTolerance float] [-selectNonRigidKeys] |
Arguments
None
Flags
Name | Flag arguments | Argument type | Exclusive to | Comments |
---|---|---|---|---|
all | 0 | — | — | Calculate rigid body data for all time instead of only selected time. |
baseFrame | 1 | integer | useCurrentFrame | Use the given integer frame number as the base frame for calculation of the rigidBody. |
useCurrentFrame | 0 | — | baseFrame | Use the current frame for the definition of the rigid body offsets instead of automatically defining the offsets. |
origin | 1 | string | — | String of the marker name to use as the origin of the rigid body. |
nonRigidTolerance | 1 | float | — | The tolerance (measured in millimeters[float]) for qualifying source node keys as valid or invalid during rigid body calculations. Any keys on source nodes that fall outside this tolerance of being "rigid" with respect to the other source nodes is ignored during rigid body calculations. |
selectNonRigidKeys | 0 | — | — | Selects all keys that were ignored on the source nodes when calculating the rigid body. |
Return value
void
Examples
select LFWT RFWT RBWT LBWT; rigidBody -all -useCurrentFrame; // This implementation of the rigidBody command creates // rotation and translation animation keys across all time // for a rigid body object using the current frame to // establish the offsets of the indicated markers. // The rigid body information generated is applied in // this case to the last selected marker: LBWT.