Control-theory procedural pose driver: tracks a target AnimPose with per-channel second-order / spring / PD dynamics (same laws as ControlAnim). Script type: ControlPose.
更多...
#include <ControlPose.h>
Public 成员函数 | |
| ControlPose (AnimSkeleton *skeleton) | |
| Control pose. | |
| ~ControlPose ()=default | |
| Control pose. | |
| ControlPose (const ControlPose &)=delete | |
| ControlPose & | operator= (const ControlPose &)=delete |
| AnimSkeleton * | getSkeleton () const |
| Returns the skeleton. | |
| void | setFrequency (float frequencyHz) |
| Sets the frequency. | |
| float | getFrequency () const |
| Returns the frequency. | |
| void | setDamping (float dampingZeta) |
| Sets the damping. | |
| float | getDamping () const |
| Returns the damping. | |
| void | setResponse (float response) |
| Sets the response. | |
| float | getResponse () const |
| Returns the response. | |
| void | setIntegrator (const std::string &kind) |
| Sets the integrator. | |
| std::string | getIntegrator () const |
| Returns the integrator. | |
| void | setBoneWeight (int boneIndex, float weight) |
| Per-bone blend weight in [0,1]; 1 = full dynamics, 0 = hard snap to target. | |
| float | getBoneWeight (int boneIndex) const |
| Returns the bone weight. | |
| void | setTargetPose (const AnimPose *target) |
| Copy target pose. Channels without prior state snap; existing state keeps momentum. | |
| void | snapToTarget () |
| Snap current state to the last target without changing the target. | |
| AnimPose * | getPose () |
| Returns the pose. | |
| AnimPose * | getTargetPose () |
| Returns the target pose. | |
| eve::Result< void > | advance (const eve::SimulationStep &step) |
| Advance pose dynamics by one scheduler-owned deterministic step. | |
| void | update (float dt) |
| Legacy seconds facade; explicitly forwards to advance(). | |
详细描述
Control-theory procedural pose driver: tracks a target AnimPose with per-channel second-order / spring / PD dynamics (same laws as ControlAnim). Script type: ControlPose.
Position and scale use independent scalar channels. Rotations use shortest-path quaternion components with renormalization after each step.
在文件 ControlPose.h 第 23 行定义.
构造及析构函数说明
◆ ControlPose() [1/2]
|
explicit |
Control pose.
在文件 ControlPose.cpp 第 12 行定义.
引用了 eve::animation::AnimSkeleton::applyBindPose(), eve::animation::AnimSkeleton::getBoneCount() , 以及 n.
◆ ~ControlPose()
|
default |
Control pose.
◆ ControlPose() [2/2]
|
delete |
成员函数说明
◆ advance()
| eve::Result< void > eve::animation::ControlPose::advance | ( | const eve::SimulationStep & | step | ) |
Advance pose dynamics by one scheduler-owned deterministic step.
在文件 ControlPose.cpp 第 303 行定义.
引用了 eve::Applied, eve::Result< T >::failure(), eve::animation::detail::secondsForStep(), step, eve::Status::success() , 以及 eve::Result< T >::success().
被这些函数引用 update().
◆ getBoneWeight()
| float eve::animation::ControlPose::getBoneWeight | ( | int | boneIndex | ) | const |
◆ getDamping()
|
inline |
Returns the damping.
在文件 ControlPose.h 第 43 行定义.
◆ getFrequency()
|
inline |
Returns the frequency.
在文件 ControlPose.h 第 39 行定义.
◆ getIntegrator()
| std::string eve::animation::ControlPose::getIntegrator | ( | ) | const |
Returns the integrator.
在文件 ControlPose.cpp 第 53 行定义.
◆ getPose()
| AnimPose * eve::animation::ControlPose::getPose | ( | ) |
Returns the pose.
在文件 ControlPose.cpp 第 147 行定义.
◆ getResponse()
|
inline |
Returns the response.
在文件 ControlPose.h 第 47 行定义.
◆ getSkeleton()
|
inline |
Returns the skeleton.
在文件 ControlPose.h 第 34 行定义.
◆ getTargetPose()
| AnimPose * eve::animation::ControlPose::getTargetPose | ( | ) |
Returns the target pose.
在文件 ControlPose.cpp 第 152 行定义.
◆ operator=()
|
delete |
◆ setBoneWeight()
| void eve::animation::ControlPose::setBoneWeight | ( | int | boneIndex, |
| float | weight | ||
| ) |
Per-bone blend weight in [0,1]; 1 = full dynamics, 0 = hard snap to target.
在文件 ControlPose.cpp 第 77 行定义.
引用了 eve::animation::clampf() , 以及 weight.
◆ setDamping()
| void eve::animation::ControlPose::setDamping | ( | float | dampingZeta | ) |
Sets the damping.
在文件 ControlPose.cpp 第 30 行定义.
◆ setFrequency()
| void eve::animation::ControlPose::setFrequency | ( | float | frequencyHz | ) |
Sets the frequency.
在文件 ControlPose.cpp 第 25 行定义.
◆ setIntegrator()
| void eve::animation::ControlPose::setIntegrator | ( | const std::string & | kind | ) |
◆ setResponse()
| void eve::animation::ControlPose::setResponse | ( | float | response | ) |
Sets the response.
在文件 ControlPose.cpp 第 35 行定义.
◆ setTargetPose()
| void eve::animation::ControlPose::setTargetPose | ( | const AnimPose * | target | ) |
Copy target pose. Channels without prior state snap; existing state keeps momentum.
在文件 ControlPose.cpp 第 131 行定义.
引用了 eve::animation::AnimPose::copyFrom() , 以及 target.
◆ snapToTarget()
| void eve::animation::ControlPose::snapToTarget | ( | ) |
Snap current state to the last target without changing the target.
在文件 ControlPose.cpp 第 141 行定义.
◆ update()
| void eve::animation::ControlPose::update | ( | float | dt | ) |
Legacy seconds facade; explicitly forwards to advance().
在文件 ControlPose.cpp 第 312 行定义.
引用了 advance(), eve::Result< void >::ignore(), eve::animation::detail::legacyStep() , 以及 step.
该类的文档由以下文件生成:
- src/modules/animation/ControlPose.h
- src/modules/animation/ControlPose.cpp