37 #ifndef Alembic_AbcGeom_XformSample_h
38 #define Alembic_AbcGeom_XformSample_h
62 const double iAngleInDegrees );
69 std::size_t addOp(
XformOp iSingleRotateOp,
70 const double iSingleAxisRotationInDegrees );
73 std::size_t addOp(
const XformOp &iOp );
75 XformOp getOp(
const std::size_t iIndex )
const;
77 XformOp &operator[](
const std::size_t &iIndex );
78 const XformOp &operator[](
const std::size_t &iIndex )
const;
80 std::size_t getNumOps()
const;
82 std::size_t getNumOpChannels()
const;
86 void setInheritsXforms(
bool iInherits );
87 bool getInheritsXforms()
const;
98 void setTranslation(
const Abc::V3d &iTrans );
101 void setRotation(
const Abc::V3d &iAxis,
const double iAngleInDegress );
103 double getAngle()
const;
105 void setXRotation(
const double iAngleInDegrees );
106 double getXRotation()
const;
108 void setYRotation(
const double iAngleInDegrees );
109 double getYRotation()
const;
111 void setZRotation(
const double iAngleInDegrees );
112 double getZRotation()
const;
114 void setScale(
const Abc::V3d &iScale );
117 void setMatrix(
const Abc::M44d &iMatrix );
121 bool isTopologyEqual(
const XformSample & iSample );
131 void freezeTopology();
132 const std::vector<Alembic::Util::uint8_t> &getOpsArray()
const;
138 int32_t m_setWithOpStack;
140 std::vector<XformOp> m_ops;
Matrix44< double > M44d
4x4 matrix of double
Vec3< double > V3d
Vec3 of double.
Vec3< typename MatType::value_type > getScale(const MatType &mat)
Return a Vec3 representing the lengths of the passed matrix's upper 3×3's rows.
#define ALEMBIC_VERSION_NS