Transformation Constraint 自设变换约束¶
此约束比其他"变换"约束更加复杂、强大。它允许在给定取值范围内(视目标和约束对象属性类型有所不同),将目标的某个变换属性(即位置、旋转或缩放),映射到约束对象同一或其他类型的变换属性。你也可以切换轴向,并使用没有限制的范围值,而是作为"标记"来定义输入(目标)和输出(约束对象)值之间的映射。
所以,例如你可以使用目标在X 轴的位置来控制绕约束目标的Z轴旋转,规定目标X 轴的一个单位对应于约束对象Z 轴旋转10个单位。这通常用在齿轮(见下面的说明),和基于位置的旋转。
选项¶
- Target 目标
- 数据ID 用于选择约束目标,当它为空时表示不起作用(标题栏名称背景为红色状态)。
- 延伸
默认情况下, 最小值 和 最大值 定义输入和输出值的边界;范围之外的所有值都被剪掉。启用该选项后, 最小值 和 最大值 不再受严格限制,而是通过"标记值"定义输入和相应的输出值之间的比例(线性)映射。以下面两张图片来距离说明 延伸原理。 图片中,输入的范围(横坐标)设置为 [1.0,4.0],对应的输出范围(纵坐标)为[1.0、 2.0]。黄色曲线表示输入和输出之间的映射。
¶
源¶
包含输入(目标)设置。
- 源至目标的映射模式
单选按钮,用于选择要使用的属性类型。
位置,旋转和缩放
- 源
- 每个轴(X,Y和Z)独立地控制输入值范围的下限和上限。 请注意,如果最小值高于其对应的最大值,则约束的行为就像它具有与最大值相同的值。
- 源到目的的映射
- 三个 轴向映射 选择器用于分别选择映射到X,Y和Z输出(约束对象)轴的轴向(从上到下)。
目的¶
包含输出(至约束对象)的设置。
- 映射到
三个单选按钮用于选择要控制的属性类型。
位置,旋转和缩放
- 到
- 最小值 和 最大值 的值分别控制每个映射轴的输出值范围的下限和上限。 请注意,如果最小值高于其对应的最大值,则约束的行为就像它具有与最大值相同的值。
- Space 空间
- 空间之间的标准转换。
Note
当映射变换属性到位置(即 目的, 位置 按钮处于启用状态),计算结果会加上约束现有位置(如同启用 复制位置约束 中的 Offset(偏移) 选项一样.....)。
相反,映射变换属性到旋转或缩放,约束计算的结果会覆盖约束对象现有旋转或缩放。
当使用目标的旋转变换属性作为输入,无论真正的值是什么,约束将始终"重置回" (-180, 180)范围。例如,如果目标绕 X 轴旋转420°,约束实际使用的 "X" 输入值将是:
\(((420 + 180) modulo 360) - 180 = 60 - ...\)
这就是为什么此约束不是真的适合齿轮 !
类似地,当使用目标缩放变换属性作为输入,无论真正的值是什么,约束将始终使用其绝对值(即对负值取负)。
当 最小值 高于其相应的 最大值 时,两个值都会取为 最大值 。这意味着不能创建"反向"映射...