载入中...
搜索中...
未找到
eve::animation::ControlPose类 参考

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]

eve::animation::ControlPose::ControlPose ( AnimSkeleton *  skeleton)
explicit

◆ ~ControlPose()

eve::animation::ControlPose::~ControlPose ( )
default

Control pose.

◆ ControlPose() [2/2]

eve::animation::ControlPose::ControlPose ( const ControlPose &  )
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

Returns the bone weight.

在文件 ControlPose.cpp 第 82 行定义.

引用了 weight.

◆ getDamping()

float eve::animation::ControlPose::getDamping ( ) const
inline

Returns the damping.

在文件 ControlPose.h 第 43 行定义.

◆ getFrequency()

float eve::animation::ControlPose::getFrequency ( ) const
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()

float eve::animation::ControlPose::getResponse ( ) const
inline

Returns the response.

在文件 ControlPose.h 第 47 行定义.

◆ getSkeleton()

AnimSkeleton * eve::animation::ControlPose::getSkeleton ( ) const
inline

Returns the skeleton.

在文件 ControlPose.h 第 34 行定义.

◆ getTargetPose()

AnimPose * eve::animation::ControlPose::getTargetPose ( )

Returns the target pose.

在文件 ControlPose.cpp 第 152 行定义.

◆ operator=()

ControlPose & eve::animation::ControlPose::operator= ( const ControlPose &  )
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)

Sets the integrator.

在文件 ControlPose.cpp 第 40 行定义.

引用了 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.


该类的文档由以下文件生成: