Transformations and Hierarchies
Transformations are propagated down hierarchies. Each object’s local position is stored relative to its parent. It’s as if the parent’s center is the origin of the child’s world.
Basics of Transforming Hierarchies
Objects in hierarchies behave differently when they transformed depending on whether the objects are node-selected or branch-selected. By default:
• If an object is branch-selected, then its children are transformed as well. You can change this behavior by modifying the parent constraint on the Options tab of the child’s Local Transform property editor. See Parent Constraint.
• If an object is node-selected, then its children are not transformed unless their corresponding local transformations are animated. This is because animation on the local transformations is stored relative to the parent’s center. You can make unanimated children follow the parent with the ChldComp (Child Transform Compensation) option on the Constrain panel. See the next section, Child Transform Compensation.
![]()
|
Kinematic chains are an exception because the end location of one element always determines the start location of the next one in the chain. |
The ChldComp option on the Constrain panel controls what happens to unanimated children if an object is node-selected and transformed. This is the same as the Constrain > Child Transform Compensation menu item.
• If this option is on, the children are not visibly affected. Their local transformations are compensated so that they maintain the same global position, orientation, and size. This is the default.
• If this option is off, all children with an active parent constraint follow the parent. You cannot move the parent without moving its children.
Child Transform Compensation does not affect what happens when a child has local animation on the corresponding transformation parameters or when the parent is branch-selected. If a child has animation on its local transformations, then the animated parameters always follow the parent whether or not Child Transform Compensation is on. This is because the local animation values are stored relative to the parent’s center. If the parent is branch-selected, then the parent constraint options determine how the child is affected.
The settings on the Options tab of the Local Transform property editor control how an object inherits transformations from its parents. By default, children follow the parent when it is branch-selected and manipulated.
Activating and Deactivating Transformation Inheritance
The Active option on the Options tab of the Local Transform property editor turns the parent constraint on or off. When this option is off, the object does not follow its parent when the parent is transformed, not even when the parent is branch-selected nor when Child Transform Compensation is off.
You can also use the Position, Orientation, and Scaling options to turn inheritance on or off for translation, rotation, or scaling individually.
Controlling How Position Is Affected
When the parent of an object is scaled or rotated, the object’s position can be affected.
• The Affected by Orientation option on the Options tab of the Local Transform property editor changes the object’s position when its parent or ancestor is rotated. When this option is on, the descendant orbits like a geosynchronous satellite that stays over a fixed spot on the earth as the earth rotates. When it is off, the descendant spins around its own center when an ancestor is rotated.
• Affected by Scaling changes the object’s position when its parent or ancestor is scaled. When this option is on, the object moves away from or towards its parent in global space as the units of distance (in which its relative position in local space is measured) change size. When this option is off, the child scales with its parent but its center does not move.
Autodesk Softimage v.7.5