Overview
Система анімації Aspose.3D організована навколо ієрархії об’єктів, які прив’язують дані, вибіркові за часом, до властивостей сцени.
- Overview
AnimationClip є іменованим діапазоном відтворення (наприклад, “Walk”, “Run”) збереженим у Scene. - Overview
AnimationNode знаходиться всередині кліпу і прив’язує анімовані дані до певних властивостей об’єктів сцени. - A
BindPoint з’єднує AnimationNode з іменованим Property на A3DObject. - Overview
AnimationChannel містить один скаляр KeyframeSequence у межах точки прив’язки. - A
KeyframeSequence є впорядкованим списком KeyFrame зразки часу‑значення.
Усі класи анімації знаходяться в aspose.threed.animation підпакеті, хоча їх також можна отримати безпосередньо з aspose.threed.
AnimationClip
Іменований контейнер для одного діапазону відтворення. A Scene може містити кілька кліпів. Наслідує від SceneObject.
Overview
| Overview | Overview |
|---|
AnimationClip(name=None) | Створює кліп з необов’язковою назвою |
Overview
| Overview | Overview | Overview |
|---|
name | str | Назва кліпу (наприклад,. "Walk") |
description | str | Необов’язковий опис |
start | float | Час початку в секундах |
stop | float | Час завершення в секундах |
animations | list[AnimationNode] | Список анімаційних вузлів у цьому кліпі лише для читання |
properties | PropertyCollection | Користувацькі властивості |
Overview
| Overview | Тип повернення | Overview |
|---|
create_animation_node(node_name) | AnimationNode | Створює та реєструє новий AnimationNode у цьому кліпі |
AnimationNode
Прив’язує AnimationClip до одного або декількох BindPoint об’єктів, що орієнтуються на scene-object properties. Наслідує від A3DObject.
Overview
| Overview | Overview |
|---|
AnimationNode(name=None) | Створює animation node з необов’язковою назвою |
Overview
| Overview | Overview | Overview |
|---|
name | str | Node name |
bind_points | list[BindPoint] | Список bind points лише для читання |
sub_animations | list[AnimationNode] | Список child animation nodes лише для читання |
properties | PropertyCollection | Користувацькі властивості |
Overview
| Overview | Тип повернення | Overview |
|---|
find_bind_point(target, name) | `BindPoint | None` |
get_bind_point(target, prop_name, create) | `BindPoint | None` |
create_bind_point(obj, prop_name) | `BindPoint | None` |
get_keyframe_sequence(target, prop_name, channel_name, create) | `KeyframeSequence | None` |
BindPoint
З’єднує AnimationNode з одним Property на A3DObject. Кожен BindPoint може містити кілька AnimationChannel об’єкти (по одному на скалярний компонент). Наслідує від A3DObject.
Overview
| Overview | Overview | Overview |
|---|
property | Property | Властивість сцени‑об’єкта, яку ця точка прив’язки націлює |
channels_count | int | Кількість каналів анімації в цій точці прив’язки |
Overview
| Overview | Тип повернення | Overview |
|---|
add_channel(name, value, type=None) | bool | Додає іменований канал із значенням за замовчуванням |
get_channel(channel_name) | `AnimationChannel | None` |
get_keyframe_sequence(channel_name) | `KeyframeSequence | None` |
create_keyframe_sequence(name) | KeyframeSequence | Створює новий KeyframeSequence для цієї точки прив’язки |
bind_keyframe_sequence(channel_name, sequence) | None | Пов’язує існуючий KeyframeSequence з каналом |
reset_channels() | None | Видаляє всі канали |
AnimationChannel
Містить один скаляр KeyframeSequence для одного анімованого компонента.
Overview
| Overview | Overview | Overview |
|---|
name | str | Назва каналу (наприклад,. "X", "Y", "Z") |
default_value | Any | Значення, що використовується, коли дані ключових кадрів відсутні |
keyframe_sequence | `KeyframeSequence | None` |
KeyframeSequence
Впорядкований список KeyFrame зразки для одного скалярного каналу. Наслідує від A3DObject.
Overview
| Overview | Overview |
|---|
KeyframeSequence(name=None) | Створює порожню послідовність keyframe |
Overview
| Overview | Overview | Overview |
|---|
name | str | Назва послідовності |
key_frames | list[KeyFrame] | Список keyframe лише для читання у хронологічному порядку |
pre_behavior | Extrapolation | Поведінка до першого keyframe |
post_behavior | Extrapolation | Поведінка після останнього keyframe |
bind_point | `BindPoint | None` |
Overview
| Overview | Тип повернення | Overview |
|---|
add(time, value, interpolation=Interpolation.LINEAR) | None | Додає keyframe у time (секунди) з даним value і interpolation режим |
reset() | None | Очищає всі ключові кадри та скидає поведінку pre/post |
KeyFrame
Один зразок часу‑значення у KeyframeSequence.
Overview
KeyFrame об’єкти створюються внутрішньо за допомогою KeyframeSequence.add(); не створюйте їх безпосередньо.
Overview
| Overview | Overview | Overview |
|---|
time | float | Позиція часу в секундах |
value | float | Анімоване значення в цей момент |
interpolation | Interpolation | Режим інтерполяції, застосований між цим ключовим кадром і наступним |
tangent_weight_mode | WeightedMode | Режим ваги тангенса (криві Безьє) |
step_mode | StepMode | Поведінка кроку (PREVIOUS_VALUE або NEXT_VALUE) |
next_in_tangent | `Vector2 | None` |
out_tangent | `Vector2 | None` |
out_weight | float | Вихідна вага тангенса |
next_in_weight | float | Вага вхідного тангенса |
tension | float | Параметр натягу (TCB-сплайн) |
continuity | float | Параметр безперервності (TCB-сплайн) |
bias | float | Параметр зсуву (TCB-сплайн) |
independent_tangent | bool | Overview True, вхідні та вихідні тангенси незалежні |
flat | bool | Overview True, тангенси зажимані плоскі |
time_independent_tangent | bool | Overview True, напрямок тангенса не залежить від масштабування часу |
Overview
Керує тим, як значення інтерполюються між послідовними ключовими кадрами.
| Overview | Overview |
|---|
CONSTANT | Overview |
LINEAR | Лінійна інтерполяція між значеннями |
BEZIER | Кубічний Безьє з використанням вхідних/вихідних дотичних |
B_SPLINE | Однорідний B-сплайн |
CARDINAL_SPLINE | Кардинальний сплайн |
TCB_SPLINE | Сплайн натягу‑неперервності‑зміщення |
Overview
Керує поведінкою анімації поза першим і останнім ключовим кадром.
| Overview | Overview |
|---|
CONSTANT | Утримувати граничне значення |
GRADIENT | Екстраполювати за градієнтом дотичної граничного ключового кадру |
CYCLE | Повторити діапазон ключових кадрів (цикли) |
CYCLE_RELATIVE | Повторити з кумулятивним зсувом (відносно кінцевого значення) |
OSCILLATE | Пінг-понг (чередування прямого та зворотного повтору) |
Overview
Див. також