Example
„Aspose.3D“ animacijos sistema organizuota aplink objektų hierarchiją, kuri susieja laiku mėginius duomenis su scenos savybėmis.
- Example
AnimationClip yra pavadintas atkūrimo intervalas (pvz., „Walk“, „Run“) laikomas Scene. - Example
AnimationNode gyvena klipo viduje ir susieja animuotus duomenis su konkrečiomis savybėmis scenos objektuose. - A
BindPoint prijungia AnimationNode į pavadintą Property ant A3DObject. - Example
AnimationChannel laiko vieną skalarą KeyframeSequence prie bind point. - A
KeyframeSequence yra išrikiuotas sąrašas KeyFrame laiko‑reikšmės mėginiai.
Visos animacijos klasės yra aspose.threed.animation subpakete, nors jos taip pat prieinamos tiesiogiai iš aspose.threed.
AnimationClip
Pavadintas konteineris vienam atkūrimo intervalui. A Scene gali turėti kelis klipus. Paveldi iš SceneObject.
Example
| Example | Example |
|---|
AnimationClip(name=None) | Sukuria klipą su pasirenkamu pavadinimu |
Example
| Example | Example | Example |
|---|
name | str | Klipų pavadinimas (pvz. "Walk") |
description | str | Pasirenkamas aprašymas |
start | float | Pradžios laikas sekundėmis |
stop | float | Pabaigos laikas sekundėmis |
animations | list[AnimationNode] | Tik skaitymui skirta animacijos mazgų sąrašas šiame klipte |
properties | PropertyCollection | Pasirinktinės savybės |
Example
| Example | Grąžinimo tipas | Example |
|---|
create_animation_node(node_name) | AnimationNode | Sukuria ir registruoja naują AnimationNode šiame klipte |
AnimationNode
Susieja AnimationClip su vienu ar daugiau BindPoint objektus, nukreiptus į scenos objekto savybes. Paveldi iš A3DObject.
Example
| Example | Example |
|---|
AnimationNode(name=None) | Sukuria animacijos mazgą su pasirenkamu pavadinimu |
Example
| Example | Example | Example |
|---|
name | str | Mazgo pavadinimas |
bind_points | list[BindPoint] | Tik skaitymui skirta susiejimo taškų sąrašas |
sub_animations | list[AnimationNode] | Tik skaitymui skirta vaikų animacijos mazgų sąrašas |
properties | PropertyCollection | Pasirinktinės savybės |
Example
| Example | Grąžinimo tipas | Example |
|---|
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
Prijungia AnimationNode prie vieno Property ant A3DObject. Kiekvienas BindPoint gali turėti kelis AnimationChannel objektus (po vieną skaliarinį komponentą). Paveldi iš A3DObject.
Example
| Example | Example | Example |
|---|
property | Property | Scenos objekto savybė, kurią šis susiejimo taškas taikina |
channels_count | int | Animacijos kanalų skaičius šiame susiejimo taške |
Example
| Example | Grąžinimo tipas | Example |
|---|
add_channel(name, value, type=None) | bool | Prideda pavadintą kanalą su numatytąja verte |
get_channel(channel_name) | `AnimationChannel | None` |
get_keyframe_sequence(channel_name) | `KeyframeSequence | None` |
create_keyframe_sequence(name) | KeyframeSequence | Sukuria naują KeyframeSequence šiam susiejimo taškui |
bind_keyframe_sequence(channel_name, sequence) | None | Susieja esamą KeyframeSequence su kanalu |
reset_channels() | None | Pašalina visus kanalus |
AnimationChannel
Saugo vieną skalarą KeyframeSequence vienam animuotam komponentui.
Example
| Example | Example | Example |
|---|
name | str | Kanalo pavadinimas (pvz. "X", "Y", "Z") |
default_value | Any | Vertė, naudojama, kai nėra raktų kadro duomenų |
keyframe_sequence | `KeyframeSequence | None` |
KeyframeSequence
Surikiuotas sąrašas KeyFrame pavyzdžiai vienam skaliariam kanalui. Paveldi iš A3DObject.
Example
| Example | Example |
|---|
KeyframeSequence(name=None) | Sukuria tuščią raktų kadrų seką |
Example
| Example | Example | Example |
|---|
name | str | Sekos pavadinimas |
key_frames | list[KeyFrame] | Tik skaitymui skirta raktų kadrų sąrašas chronologine tvarka |
pre_behavior | Extrapolation | Elgsena prieš pirmąjį raktų kadrą |
post_behavior | Extrapolation | Elgsena po paskutinio raktų kadro |
bind_point | `BindPoint | None` |
Example
| Example | Grąžinimo tipas | Example |
|---|
add(time, value, interpolation=Interpolation.LINEAR) | None | Prideda raktinį kadrą ties time (sekundės) su nurodytu value ir interpolation režimas |
reset() | None | Išvalo visus raktinius kadrus ir atstato prieš/post elgseną |
KeyFrame
Vienas laiko‑reikšmės pavyzdys KeyframeSequence.
Example
KeyFrame objektai kuriami viduje KeyframeSequence.add(); nesukurkite jų tiesiogiai.
Example
| Example | Example | Example |
|---|
time | float | Laiko pozicija sekundėmis |
value | float | Animuota vertė šiuo metu |
interpolation | Interpolation | Interpolacijos režimas, taikomas tarp šio raktinio kadro ir kito |
tangent_weight_mode | WeightedMode | Tangento svorio režimas (Bezier kreivės) |
step_mode | StepMode | Žingsnio elgsena (PREVIOUS_VALUE arba NEXT_VALUE) |
next_in_tangent | `Vector2 | None` |
out_tangent | `Vector2 | None` |
out_weight | float | Išeinančio tangento svoris |
next_in_weight | float | Įeinančio tangento svoris |
tension | float | Įtempimo parametras (TCB splainas) |
continuity | float | Tęstinumo parametras (TCB splainas) |
bias | float | Šališkumo parametras (TCB splainas) |
independent_tangent | bool | Example True, įeinančios ir išeinančios tangentės yra nepriklausomos |
flat | bool | Example True, tangentės yra sutvirtintos plokščiai |
time_independent_tangent | bool | Example True, tangentės kryptis yra nepriklausoma nuo laiko mastelio |
Example
Valdo, kaip reikšmės interpoliamos tarp gretimų raktinių kadrų.
| Example | Example |
|---|
CONSTANT | Example |
LINEAR | Linijinė interpoliacija tarp verčių |
BEZIER | Kubinis Bezier naudojant in/out tangentės |
B_SPLINE | Vienodasis B-splainas |
CARDINAL_SPLINE | Kardininis splainas |
TCB_SPLINE | Įtempimo–tęstinumo–šališkumo splainas |
Example
Valdo animacijos elgseną už pirmojo ir paskutinio raktinio kadro ribų.
| Example | Example |
|---|
CONSTANT | Laikykite ribinę reikšmę |
GRADIENT | Ekstrapoliuokite pagal ribinio raktų kadro tangentinį gradientą |
CYCLE | Pakartokite raktų kadro diapazoną (ciklus) |
CYCLE_RELATIVE | Pakartokite su kumuliatyviu poslinkiu (santykinai su galutine reikšme) |
OSCILLATE | Ping-pong (kaitaluojantis į priekį ir atgal kartojimas) |
Example
Žr. taip pat