SmUsdXformAttribute#

Defined in BREP_SM_USD/inc/SmuAttribute.h

class SmUsdXformAttribute : public SmAttribute#

PURPOSE: A SMLib attribute for space transformations for preserving transformation data during USD<->SMLib translation roundtrips.

NOTES: Transformation matrices that get preserved through USD<->SMLib roundtrip translations are the one-to-one UsdBrepArray or OmniMesh transformation matrix inherited through the base class Gprim to the transformation class usdGeomXformable represented by attribute xformOp:transform.

Public Functions

inline SmUsdXformAttribute(
ULONG lAttributeId,
SmAttributeBehaviorType eBehavior,
const pxr::GfVec3d *pTranslate = NULL,
const pxr::GfVec3d *pScale = NULL,
const pxr::GfVec3d *pRotateXYZ = NULL,
const pxr::GfVec3d *pRotateXZY = NULL,
const pxr::GfVec3d *pRotateYXZ = NULL,
const pxr::GfVec3d *pRotateYZX = NULL,
const pxr::GfVec3d *pRotateZXY = NULL,
const pxr::GfVec3d *pRotateZYX = NULL,
const double dRotateX = 0.0,
const double dRotateY = 0.0,
const double dRotateZ = 0.0,
const pxr::GfVec4d *pOrient = NULL,
const pxr::GfMatrix4d *pTransform = NULL,
const pxr::VtArray<pxr::TfToken> *pXformOpOrder = NULL,
)#
SmUsdXformAttribute(const SmUsdXformAttribute &crOriginal)#
inline virtual ~SmUsdXformAttribute()#
inline virtual SmAttribute *MakeCopy(
const SmContext &crContext,
) const#
bool AttachAttributeToBrepInstance(
const pxr::SdfPrimSpecHandle &crUsdBrepArraySpecHandle,
pxr::TfToken &rtInstanceName,
)#
bool AttachAttributeToXformable(
const pxr::SdfPrimSpecHandle &crPrimSpecHandle,
)#
inline const pxr::GfVec3d &GetXformOpTranslate() const#
inline const pxr::GfVec3d &GetXformOpScale() const#
inline const pxr::GfVec3d &GetXformOpRotateXYZ() const#
inline const pxr::GfVec3d &GetXformOpRotateXZY() const#
inline const pxr::GfVec3d &GetXformOpRotateYXZ() const#
inline const pxr::GfVec3d &GetXformOpRotateYZX() const#
inline const pxr::GfVec3d &GetXformOpRotateZXY() const#
inline const pxr::GfVec3d &GetXformOpRotateZYX() const#
inline const double &GetXformOpRotateX() const#
inline const double &GetXformOpRotateY() const#
inline const double &GetXformOpRotateZ() const#
inline const pxr::GfVec4d &GetXformOpOrient() const#
inline const pxr::GfMatrix4d &GetXformOpTransform() const#
inline const pxr::VtArray<pxr::TfToken> &GetXformOpOrder() const#
inline void SetXformOpTranslate(const pxr::GfVec3d &rTranslate)#
inline void SetXformOpScale(const pxr::GfVec3d &rScale)#
inline void SetXformOpRotateXYZ(const pxr::GfVec3d &rRotateXYZ)#
inline void SetXformOpRotateXZY(const pxr::GfVec3d &rRotateXZY)#
inline void SetXformOpRotateYXZ(const pxr::GfVec3d &rRotateYXZ)#
inline void SetXformOpRotateYZX(const pxr::GfVec3d &rRotateYZX)#
inline void SetXformOpRotateZXY(const pxr::GfVec3d &rRotateZXY)#
inline void SetXformOpRotateZYX(const pxr::GfVec3d &rRotateZYX)#
inline void SetXformOpRotateX(double dRotateX)#
inline void SetXformOpRotateY(double dRotateY)#
inline void SetXformOpRotateZ(double dRotateZ)#
inline void SetXformOpOrient(const pxr::GfVec4d &rOrient)#
inline void SetXformOpTransform(const pxr::GfMatrix4d &rTransform)#
inline void SetXformOpOrder(
const pxr::VtArray<pxr::TfToken> &rXformOpOrder,
)#

Protected Attributes

pxr::GfVec3d m_sTranslate#
pxr::GfVec3d m_sScale#
pxr::GfVec3d m_sRotateXYZ#
pxr::GfVec3d m_sRotateXZY#
pxr::GfVec3d m_sRotateYXZ#
pxr::GfVec3d m_sRotateYZX#
pxr::GfVec3d m_sRotateZXY#
pxr::GfVec3d m_sRotateZYX#
double m_dRotateX#
double m_dRotateY#
double m_dRotateZ#
pxr::GfVec4d m_sOrient#
pxr::GfMatrix4d m_sTransform#
pxr::VtArray<pxr::TfToken> m_sXformOpOrder#