UsdSkelAnimQuery Class Reference

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

Public Member Functions

bool IsValid () const
 Return true if this query is valid. More...
 
 operator bool () const
 Boolean conversion operator. Equivalent to IsValid(). More...
 
USDSKEL_API UsdPrim GetPrim () const
 Return the primitive this anim query reads from. More...
 
template<typename Matrix4 >
USDSKEL_API bool ComputeJointLocalTransforms (VtArray< Matrix4 > *xforms, UsdTimeCode time=UsdTimeCode::Default()) const
 Compute joint transforms in joint-local space. More...
 
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. More...
 
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. More...
 
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. More...
 
USDSKEL_API bool GetJointTransformAttributes (std::vector< UsdAttribute > *attrs) const
 Get the attributes contributing to JointTransform computations. More...
 
USDSKEL_API bool JointTransformsMightBeTimeVarying () const
 Return true if it possible, but not certain, that joint transforms. More...
 
USDSKEL_API bool GetBlendShapeWeightTimeSamples (std::vector< double > *attrs) const
 Get the time samples at which values contributing to blend shape weights have been set. More...
 
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. More...
 
USDSKEL_API bool GetBlendShapeWeightAttributes (std::vector< UsdAttribute > *attrs) const
 Get the attributes contributing to blendshape weight computations. More...
 
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. More...
 
USDSKEL_API VtTokenArray GetJointOrder () const
 Returns an array of tokens describing the ordering of joints in the animation. More...
 
USDSKEL_API VtTokenArray GetBlendShapeOrder () const
 Returns an array of tokens describing the ordering of blend shape channels in the animation. More...
 
USDSKEL_API std::string GetDescription () const
 

Friends

class UsdSkel_CacheImpl
 
bool operator== (const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
 Equality comparison. More...
 
bool operator!= (const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
 Inequality comparison. More...
 
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.

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

◆ 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.


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