24 #ifndef PXR_USD_USD_SKEL_ANIM_QUERY_H 25 #define PXR_USD_USD_SKEL_ANIM_QUERY_H 30 #include "pxr/usd/usdSkel/api.h" 35 #include "pxr/usd/sdf/path.h" 37 #include "pxr/usd/usd/timeCode.h" 40 PXR_NAMESPACE_OPEN_SCOPE
61 bool IsValid()
const {
return (
bool)_impl; }
64 explicit operator bool()
const {
return IsValid(); }
82 return hash_value(query.
GetPrim());
92 template <
typename Matrix4>
104 VtVec3fArray* translations,
105 VtQuatfArray* rotations,
106 VtVec3hArray* scales,
110 bool ComputeBlendShapeWeights(
111 VtFloatArray* weights,
131 std::vector<double>* times)
const;
157 std::vector<double>* times)
const;
184 std::string GetDescription()
const;
190 UsdSkel_AnimQueryImplRefPtr _impl;
192 friend class UsdSkel_CacheImpl;
196 PXR_NAMESPACE_CLOSE_SCOPE
198 #endif // PXR_USD_USD_SKEL_ANIM_QUERY_H USDSKEL_API UsdPrim GetPrim() const
Return the primitive this anim query reads from.
USDSKEL_API VtTokenArray GetJointOrder() const
Returns an array of tokens describing the ordering of joints in the animation.
USDSKEL_API bool ComputeJointLocalTransforms(VtArray< Matrix4 > *xforms, UsdTimeCode time=UsdTimeCode::Default()) const
Compute joint transforms in joint-local space.
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.
Standard pointer typedefs.
Thread-safe cache for accessing query objects for evaluating skeletal data.
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.
Class providing efficient queries of primitives that provide skel animation.
USDSKEL_API bool GetBlendShapeWeightAttributes(std::vector< UsdAttribute > *attrs) const
Get the attributes contributing to blendshape weight computations.
USDSKEL_API bool GetJointTransformAttributes(std::vector< UsdAttribute > *attrs) const
Get the attributes contributing to JointTransform computations.
bool IsValid() const
Return true if this query is valid.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
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.
Stores a 4x4 matrix of double elements.
Represent a time value, which may be either numeric, holding a double value, or a sentinel value UsdT...
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
A basic mathematical interval class.
friend bool operator==(const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
Equality comparison.
Represents an arbitrary dimensional rectangular container class.
USDSKEL_API bool JointTransformsMightBeTimeVarying() const
Return true if it possible, but not certain, that joint transforms.
Defines all the types "TYPED" for which Vt creates a VtTYPEDArray typedef.
friend bool operator!=(const UsdSkelAnimQuery &lhs, const UsdSkelAnimQuery &rhs)
Inequality comparison.
USDSKEL_API VtTokenArray GetBlendShapeOrder() const
Returns an array of tokens describing the ordering of blend shape channels in the animation.
static constexpr UsdTimeCode Default()
Produce a UsdTimeCode representing the sentinel value for 'default'.
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
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 BlendShapeWeightsMightBeTimeVarying() const
Return true if it possible, but not certain, that the blend shape weights computed through this anima...
USDSKEL_API bool GetBlendShapeWeightTimeSamples(std::vector< double > *attrs) const
Get the time samples at which values contributing to blend shape weights have been set.