Loading...
Searching...
No Matches
UsdSkelAnimQuery Class Reference

Class providing efficient queries of primitives that provide skel animation. More...

#include <animQuery.h>

Public Member Functions

bool IsValid () const
 Return true if this query is valid.
 
 operator bool () const
 Boolean conversion operator. Equivalent to IsValid().
 
USDSKEL_API UsdPrim GetPrim () const
 Return the primitive this anim query reads from.
 
template<typename Matrix4 >
USDSKEL_API bool ComputeJointLocalTransforms (VtArray< Matrix4 > *xforms, UsdTimeCode time=UsdTimeCode::Default()) const
 Compute joint transforms in joint-local space.
 
USDSKEL_API bool ComputeJointLocalTransformComponents (VtVec3fArray *translations, VtQuatfArray *rotations, VtVec3hArray *scales, UsdTimeCode time=UsdTimeCode::Default()) const
 Compute translation,rotation,scale components of the joint transforms in joint-local space.
 
USDSKEL_API bool ComputeBlendShapeWeights (VtFloatArray *weights, UsdTimeCode time=UsdTimeCode::Default()) const
 
USDSKEL_API bool GetJointTransformTimeSamples (std::vector< double > *times) const
 Get the time samples at which values contributing to joint transforms are set.
 
USDSKEL_API bool GetJointTransformTimeSamplesInInterval (const GfInterval &interval, std::vector< double > *times) const
 Get the time samples at which values contributing to joint transforms are set, over interval.
 
USDSKEL_API bool GetJointTransformAttributes (std::vector< UsdAttribute > *attrs) const
 Get the attributes contributing to JointTransform computations.
 
USDSKEL_API bool JointTransformsMightBeTimeVarying () const
 Return true if it possible, but not certain, that joint transforms
computed through this animation query change over time, false otherwise.
 
USDSKEL_API bool GetBlendShapeWeightTimeSamples (std::vector< double > *attrs) const
 Get the time samples at which values contributing to blend shape weights have been set.
 
USDSKEL_API bool GetBlendShapeWeightTimeSamplesInInterval (const GfInterval &interval, std::vector< double > *times) const
 Get the time samples at which values contributing to blend shape weights are set, over interval.
 
USDSKEL_API bool GetBlendShapeWeightAttributes (std::vector< UsdAttribute > *attrs) const
 Get the attributes contributing to blendshape weight computations.
 
USDSKEL_API bool BlendShapeWeightsMightBeTimeVarying () const
 Return true if it possible, but not certain, that the blend shape weights computed through this animation query change over time, false otherwise.
 
USDSKEL_API VtTokenArray GetJointOrder () const
 Returns an array of tokens describing the ordering of joints in the animation.
 
USDSKEL_API VtTokenArray GetBlendShapeOrder () const
 Returns an array of tokens describing the ordering of blend shape channels in the animation.
 
USDSKEL_API std::string GetDescription () const
 

Friends

class UsdSkel_CacheImpl
 
bool operator== (const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
 Equality comparison.
 
bool operator!= (const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
 Inequality comparison.
 
size_t hash_value (const UsdSkelAnimQuery &query)
 

Detailed Description

Class providing efficient queries of primitives that provide skel animation.

Definition at line 54 of file animQuery.h.

Constructor & Destructor Documentation

◆ UsdSkelAnimQuery()

USDSKEL_API UsdSkelAnimQuery ( )
inline

Definition at line 58 of file animQuery.h.

Member Function Documentation

◆ BlendShapeWeightsMightBeTimeVarying()

USDSKEL_API bool BlendShapeWeightsMightBeTimeVarying ( ) const

Return true if it possible, but not certain, that the blend shape weights computed through this animation query change over time, false otherwise.

See also
UsdAttribute::ValueMightBeTimeVayring

◆ ComputeJointLocalTransformComponents()

USDSKEL_API bool ComputeJointLocalTransformComponents ( VtVec3fArray *  translations,
VtQuatfArray *  rotations,
VtVec3hArray *  scales,
UsdTimeCode  time = UsdTimeCode::Default() 
) const

Compute translation,rotation,scale components of the joint transforms in joint-local space.

This is provided to facilitate direct streaming of animation data in a form that can efficiently be processed for animation blending.

◆ ComputeJointLocalTransforms()

USDSKEL_API bool ComputeJointLocalTransforms ( VtArray< Matrix4 > *  xforms,
UsdTimeCode  time = UsdTimeCode::Default() 
) const

Compute joint transforms in joint-local space.

Transforms are returned in the order specified by the joint ordering of the animation primitive itself.

◆ GetBlendShapeOrder()

USDSKEL_API VtTokenArray GetBlendShapeOrder ( ) const

Returns an array of tokens describing the ordering of blend shape channels in the animation.

◆ GetBlendShapeWeightAttributes()

USDSKEL_API bool GetBlendShapeWeightAttributes ( std::vector< UsdAttribute > *  attrs) const

Get the attributes contributing to blendshape weight computations.

◆ GetBlendShapeWeightTimeSamples()

USDSKEL_API bool GetBlendShapeWeightTimeSamples ( std::vector< double > *  attrs) const

Get the time samples at which values contributing to blend shape weights have been set.

See also
UsdAttribute::GetTimeSamples

◆ GetBlendShapeWeightTimeSamplesInInterval()

USDSKEL_API bool GetBlendShapeWeightTimeSamplesInInterval ( const GfInterval interval,
std::vector< double > *  times 
) const

Get the time samples at which values contributing to blend shape weights are set, over interval.

See also
UsdAttribute::GetTimeSamplesInInterval

◆ GetJointOrder()

USDSKEL_API VtTokenArray GetJointOrder ( ) const

Returns an array of tokens describing the ordering of joints in the animation.

See also
UsdSkelSkeleton::GetJointOrder

◆ GetJointTransformAttributes()

USDSKEL_API bool GetJointTransformAttributes ( std::vector< UsdAttribute > *  attrs) const

Get the attributes contributing to JointTransform computations.

◆ GetJointTransformTimeSamples()

USDSKEL_API bool GetJointTransformTimeSamples ( std::vector< double > *  times) const

Get the time samples at which values contributing to joint transforms are set.

This only computes the time samples for sampling transforms in joint-local space, and does not include time samples affecting the root transformation.

See also
UsdAttribute::GetTimeSamples

◆ GetJointTransformTimeSamplesInInterval()

USDSKEL_API bool GetJointTransformTimeSamplesInInterval ( const GfInterval interval,
std::vector< double > *  times 
) const

Get the time samples at which values contributing to joint transforms are set, over interval.

This only computes the time samples for sampling transforms in joint-local space, and does not include time samples affecting the root transformation.

See also
UsdAttribute::GetTimeSamplesInInterval

◆ GetPrim()

USDSKEL_API UsdPrim GetPrim ( ) const

Return the primitive this anim query reads from.

◆ IsValid()

bool IsValid ( ) const
inline

Return true if this query is valid.

Definition at line 61 of file animQuery.h.

◆ JointTransformsMightBeTimeVarying()

USDSKEL_API bool JointTransformsMightBeTimeVarying ( ) const

Return true if it possible, but not certain, that joint transforms
computed through this animation query change over time, false otherwise.

See also
UsdAttribute::ValueMightBeTimeVayring

◆ operator bool()

operator bool ( ) const
inlineexplicit

Boolean conversion operator. Equivalent to IsValid().

Definition at line 64 of file animQuery.h.

Friends And Related Function Documentation

◆ hash_value

size_t hash_value ( const UsdSkelAnimQuery query)
friend

Definition at line 81 of file animQuery.h.

◆ operator!=

bool operator!= ( const UsdSkelAnimQuery lhs,
const UsdSkelAnimQuery rhs 
)
friend

Inequality comparison.

Return false if lhs and rhs represent the same UsdSkelAnimQuery, true otherwise.

Definition at line 75 of file animQuery.h.

◆ operator==

bool operator== ( const UsdSkelAnimQuery lhs,
const UsdSkelAnimQuery rhs 
)
friend

Equality comparison.

Return true if lhs and rhs represent the same UsdSkelAnimQuery, false otherwise.

Definition at line 68 of file animQuery.h.

◆ UsdSkel_CacheImpl

friend class UsdSkel_CacheImpl
friend

Definition at line 192 of file animQuery.h.


The documentation for this class was generated from the following file: