24 #ifndef PXR_USD_USD_SKEL_SKELETON_QUERY_H 25 #define PXR_USD_USD_SKEL_SKELETON_QUERY_H 30 #include "pxr/usd/usdSkel/api.h" 41 PXR_NAMESPACE_OPEN_SCOPE
76 bool IsValid()
const {
return _definition; }
79 explicit operator bool()
const {
return IsValid(); }
85 return lhs._definition == rhs._definition &&
86 lhs._animQuery == rhs._animQuery;
131 const UsdSkelAnimMapper&
GetMapper()
const;
148 template <
typename Matrix4>
152 bool atRest=
false)
const;
159 template <
typename Matrix4>
163 bool atRest=
false)
const;
171 template <
typename Matrix4>
183 template <
typename Matrix4>
187 bool atRest=
false)
const;
198 template <
typename Matrix4>
204 template <
typename Matrix4>
209 std::string GetDescription()
const;
217 bool _HasMappableAnim()
const;
219 template <
typename Matrix4>
222 bool atRest=
false)
const;
224 template <
typename Matrix4>
227 bool atRest=
false)
const;
229 template <
typename Matrix4>
234 UsdSkel_SkelDefinitionRefPtr _definition;
236 UsdSkelAnimMapper _animToSkelMapper;
238 friend class UsdSkel_CacheImpl;
242 PXR_NAMESPACE_CLOSE_SCOPE
244 #endif // PXR_USD_USD_SKEL_SKELETON_QUERY_H
Standard pointer typedefs.
USDSKEL_API bool HasBindPose() const
Returns true if the size of the array returned by skeleton::GetBindTransformsAttr() matches the numbe...
Object holding information describing skeleton topology.
USDSKEL_API const UsdSkelAnimQuery & GetAnimQuery() const
Returns the animation query that provides animation for the bound skeleton instance,...
Class providing efficient queries of primitives that provide skel animation.
USDSKEL_API VtTokenArray GetJointOrder() const
Returns an array of joint paths, given as tokens, describing the order and parent-child relationships...
friend bool operator==(const UsdSkelSkeletonQuery &lhs, const UsdSkelSkeletonQuery &rhs)
Equality comparison.
USDSKEL_API bool GetJointWorldBindTransforms(VtArray< Matrix4 > *xforms) const
Returns the world space joint transforms at bind time.
USDSKEL_API bool HasRestPose() const
Returns true if the size of the array returned by skeleton::GetRestTransformsAttr() matches the numbe...
Represent a time value, which may be either numeric, holding a double value, or a sentinel value UsdT...
USDSKEL_API const UsdSkelAnimMapper & GetMapper() const
Returns a mapper for remapping from the bound animation, if any, to the Skeleton.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Represents an arbitrary dimensional rectangular container class.
USDSKEL_API const UsdSkelTopology & GetTopology() const
Returns the topology of the bound skeleton instance, if any.
Defines all the types "TYPED" for which Vt creates a VtTYPEDArray typedef.
USDSKEL_API bool ComputeJointSkelTransforms(VtArray< Matrix4 > *xforms, UsdTimeCode time, bool atRest=false) const
Compute joint transforms in skeleton space, at time.
USDSKEL_API bool ComputeJointLocalTransforms(VtArray< Matrix4 > *xforms, UsdTimeCode time, bool atRest=false) const
Compute joint transforms in joint-local space, at time.
USDSKEL_API const UsdSkelSkeleton & GetSkeleton() const
Returns the bound skeleton instance, if any.
USDSKEL_API UsdPrim GetPrim() const
Returns the underlying Skeleton primitive corresponding to the bound skeleton instance,...
USDSKEL_API bool ComputeSkinningTransforms(VtArray< Matrix4 > *xforms, UsdTimeCode time) const
Compute transforms representing the change in transformation of a joint from its rest pose,...
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
Primary interface to reading bound skeleton data.
USDSKEL_API bool ComputeJointWorldTransforms(VtArray< Matrix4 > *xforms, UsdGeomXformCache *xfCache, bool atRest=false) const
Compute joint transforms in world space, at whatever time is configured on xfCache.
USDSKEL_API bool ComputeJointRestRelativeTransforms(VtArray< Matrix4 > *xforms, UsdTimeCode time) const
Compute joint transforms which, when concatenated against the rest pose, produce joint transforms in ...
friend bool operator!=(const UsdSkelSkeletonQuery &lhs, const UsdSkelSkeletonQuery &rhs)
Inequality comparison.
bool IsValid() const
Return true if this query is valid.