Transformation Constraint – Примус «Трансформація»

Цей примус є складнішим та універсальнішим, ніж інші примуси «трансформ». Він дозволяє вам розкладати один тип властивостей трансформ (тобто локація, обертання чи масштаб) цілі на такий самий або інший тип властивостей трансформ володільця в межах заданого діапазону значень (який може бути різним для кожної властивості цілі та володільця). Ви можете також перемикатися між осями та використовувати значення діапазонів не як ліміти, а як «маркери» для визначення розкладання між увідними (ціль) та вивідними (володілець) значеннями.

Тож, наприклад, ви можете використати позицію цілі вздовж осі X для керування обертанням володільця навколо осі Z, зазначивши, що одиниця вздовж осі X цілі відповідає 10 одиницям навколо осі Z володільця. Типові використання цього включають передачі (дивіться примітку нижче) та обертання на основі укладів локації.

Options – Опції

../../../_images/animation_constraints_transform_transformation_panel.png

Панель для Transformation.

Target – Ціль

Поле Ідентифікатор Даних — Data ID використовується для вибору цілі для примусу, і поки вона не вибрана, то примус буде не функціональним (фон поля імені буде забарвлений червоним). Дивіться для отримання додаткової інформації про common constraint properties.

Extrapolate – Екстраполювання

Стандартно значення Min та Max обмежують увідні та вивідні значення; всі значення поза цими діапазонами відсікаються до них. Коли ви вмикаєте цю кнопку, то значення Min та Max більше не є суворими лімітами, а скоріше «маркерами», що визначають пропорційне (лінеарне) розкладання між увідними та відповідними вивідними значеннями. Проілюструймо це за допомогою двох графів на Ілюстрації fig-constraints-transformation-extrapolate. На цих картинках діапазон уводу (по абсцисі) задано як (1.0 до 4.0), а його відповідний діапазон виводу (по ординаті) – як (1.0 до 2.0). Жовта крива представляє розкладання між уводом та виводом.

Принципи цього Екстраполювання.
../../../_images/animation_constraints_transform_transformation_extrapolate-1.png

Екстраполювання вимкнене: вивідні значення обмежені всередині діапазону (1.0 to 2.0).

../../../_images/animation_constraints_transform_transformation_extrapolate-2.png

Екстраполювання увімкнене: вивідні значення є «вільними» пропорційно слідувати увідним.

Target/Owner – Ціль/Володілець

Стандартна конверсія між просторами. Для отримання додаткової інформації дивіться common constraint properties.

Influence – Вплив

Керує відсотком впливу, який цей примус має на об’єкт. Дивіться докладніше common constraint properties.

Map From – Розкладка Із

Містить увідні устави (від цілі).

Location, Rotation, Scale – Локація, Обертання, Масштаб

Ці радіокнопки дозволяють вам вибрати, який тип властивості використовувати.

Mode (Rotation) – Режим (Обертання)

Дозволяє визначати тип обертання на уводі, включаючи різні порядки за Ейлером – Euler, кватерніон – Quaternion та інші режими каналу обертання Rotation Channel Modes. Стандартним є використовування порядку за Ейлером – Euler для володільця примуса.

У режимі Quaternion ці канали конвертуються у виважені кути так само, як кути гойдання режимів Swing and X/Y/Z Twist.

X/Y/Z Min, Max – Мін, Макс

Незалежно для кожної осі (X, Y та Z) поля чисел мінімуму та максимуму керують нижньою та верхньою межами увідного діапазону значень. Зауважте, що якщо мінімальне значення є вищим, ніж відповідне йому максимальне значення, то цей примус поводиться, ніби він має як мінімальне таке саме значення, як і максимальне.

Map To – Розкладка Для

Містить устави виводу (володілець).

Location, Rotation, Scale – Локація, Обертання, Масштаб

Ці три радіокнопки дозволяють вам вибрати тип властивості для керування ним.

Order (Rotation) – Порядок (Обертання)

Для обертання дозволяє визначати, який порядок за Ейлером – Euler використовувати під час обчислення примуса. Стандартним є використовування порядку володільця примуса.

X/Y/Z Source Axis – Вісь Джерела

Ці три вибірники осей дозволяють вам вибирати, яку увідну вісь розкладати, відповідно (зверху вниз) на вивідні (володільця) X, Y та Z осі.

Min, Max – Мін, Макс

Поля чисел Min та Max керують нижніми та верхніми межами вивідного діапазону значень, незалежно для кожної розкладеної осі. Зауважте, що якщо мінімальне значення є вищим, ніж відповідне йому максимальне значення, то цей примус поводиться, ніби він має як мінімальне таке саме значення, як і максимальне.

Mix – Мішання

Визначає, як результат цього примуса комбінується з наявною трансформацією. Набір доступних варіантів варіюється на основі типу цієї трансформації.

Replace – Заміна

Результат цього примусу замінює наявну трансформацію.

Multiply (Scale) – Множення (Масштаб)

Нові значення множаться на наявні значення осей.

Add (Location, Rotation) – Додання (Локація, Обертання)

Нові значення додаються до наявних значень осей.

Before Original (Rotation) – Перед Оригіналом (Обертання)

Нове обертання додається перед наявним обертанням, ніби воно було застосоване до предка володільця примусу.

After Original (Rotation) – Після Оригіналу (Обертання)

Нове обертання додається після наявного обертання, ніби воно було застосоване до нащадка володільця примусу.

Примітка

  • З історичних причин, режим Mix стандартно задано як Add для локації та обертання та як Replace для масштабування.

  • При використовуванні властивостей трансформи обертання цілі як уводу, якими б реальними значення не були, примус буде завжди «повертати їх» у діапазон (-180 до 180). Наприклад, якщо ціль має обертання на 420 градусів навколо її осі X, то значення, використовувані цим примусом як увід X, будуть:

    \(((420 + 180) modulo 360) - 180 = 60 - ...\)

    Ось чому цей примус реально не підходить для шестерень, приводів!

  • Подібно, коли масштабові властивості трансформування цілі використовуються як увід, то незалежно від наявних реальних значень, примус завжди буде приймати їх абсолютні значення (тобто, інвертувати від’ємні у додатні).

  • Коли мінімальне min значення є вищим, ніж відповідне йому максимальне max, то обидва вони вважаються рівними максимальному max значенню. Це означає, що ви не можете створювати «розвернені» розкладання…

Приклад – Example