Transformation Constraint 自设变换约束
此约束比其他 变换
约束更加复杂、强大。它允许在给定取值范围内(视目标和约束物体属性类型有所不同),将目标的某个变换属性(即位置、旋转或缩放),映射到约束对象同一或其他类型的变换属性。你也可以切换轴向,并使用没有限制的范围值,而是作为 标记
来定义输入(目标)和输出(约束对象)值之间的映射。
所以,例如你可以使用目标在X 轴的位置来控制绕约束目标的Z轴旋转,规定目标X 轴的一个单位对应于约束对象Z 轴旋转10个单位。这通常用在齿轮(见下面的说明),和基于位置的旋转。
选项
自设变换面板。
Target 目标
数据ID 用于选择约束目标,当它没有时,就没有功能(红色状态)。参见 常见的约束属性 以获得更多信息。
延伸
默认情况下, 最小 和 最大 值约束了输入和输出值;所有在这些范围之外的值都被剪切到它们。当你启用这个按钮时, 最小 和 最大 值不再是严格的限制,而是定义了输入和相应输出值之间的比例(线性)映射的 标记
。让我们用两张图来说明,Fig. 延伸原理。 。在这些图片中,输入范围(横轴)被设定为(1.0到4.0),其相应的输出范围(纵轴)为(1.0到2.0)。黄色曲线表示输入和输出之间的映射。
目标/所有者
空间之间的标准转换。更多信息请参见 常见的约束属性。
影响
控制约束对对象的影响百分比。有关详细信息,请参阅 通用约束属性 。
源至目标的映射模式
包含输入(目标)设置。
位置、旋转、比例
单选按钮,用于选择要使用的属性类型。
模式(旋转)
指定旋转输入要使用的 欧拉 顺序, 四元数 和其他 旋转通道模式。 默认使用约束物体的 欧拉 顺序。
在 四元数 模式下,通道将被转换为加权角和 摇摆和X/Y/Z扭转 模式相同。
X/Y/Z 最小、最大
每个轴(X,Y和Z)独立地控制输入值范围的下限和上限。 请注意,如果最小值高于其对应的最大值,则约束的行为就像它具有与最大值相同的值。
映射到
包含输出(至约束对象)的设置。
位置、旋转、比例
三个单选按钮用于选择要控制的属性类型。
顺序(旋转)
对于旋转,允许指定 欧拉 顺序在约束的评估中使用。默认情况下,使用约束所有者的顺序。
X/Y/Z源轴
三个轴选择器允许你选择哪个输入轴来映射,分别是(从上到下)X、Y和Z输出(所有者)轴。
最小值,最大值
最小 和 最大 数字字段控制输出值范围的下限和上限,独立于每个映射的轴。注意,如果一个最小值高于其对应的最大值,该约束的行为就像它的值与最大值一样。
混合
指定如何混合约束结果和现有值。可用选项的菜单因转换类型而异。
替换
约束的结果替换现有的值。
相乘(缩放)
约束的结果将与现有值相乘。
相加(位置、旋转)
约束的值与现有的值相加。
原有值之前 (旋转)
新的旋转被添加到现有的旋转之前,就像它被应用于约束所有者的一个父级。
原有值之后 (旋转)
新的旋转被添加到现有的旋转之后,就像它被应用于约束所有者的一个孩子一样。
Note
由于历史原因, 混合*模式在位置和旋转中默认为 *添加 ,缩放中默认为 替换 。
当使用目标的旋转变换属性作为输入,无论真正的值是什么,约束将始终``重置回`` (-180, 180)范围。例如,如果目标绕 X 轴旋转420°,约束实际使用的
X
输入值将是:\(((420 + 180) modulo 360) - 180 = 60 - …\)
这就是为什么此约束不是真的适合齿轮 !
类似地,当使用目标缩放变换属性作为输入,无论真正的值是什么,约束将始终使用其绝对值(即对负值取负)。
当 最小值 高于其相应的 最大值 时,两个值都会取为 最大值 。这意味着不能创建
反向
映射…