37#ifndef Alembic_AbcGeom_XformSample_h
38#define Alembic_AbcGeom_XformSample_h
40#include <Alembic/Util/Export.h>
41#include <Alembic/AbcGeom/Foundation.h>
43#include <Alembic/AbcGeom/XformOp.h>
47namespace ALEMBIC_VERSION_NS {
50class ALEMBIC_EXPORT XformSample
57 std::size_t addOp(
XformOp iTransOrScaleOp,
const Abc::V3d &iVal );
61 std::size_t addOp(
XformOp iRotateOp,
const Abc::V3d &iAxis,
62 const double iAngleInDegrees );
66 std::size_t addOp(
XformOp iMatrixOp,
const Abc::M44d &iMatrix );
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;
87 bool getInheritsXforms()
const;
99 Abc::V3d getTranslation()
const;
101 void setRotation(
const Abc::V3d &iAxis,
const double iAngleInDegress );
102 Abc::V3d getAxis()
const;
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 );
115 Abc::V3d getScale()
const;
117 void setMatrix(
const Abc::M44d &iMatrix );
118 Abc::M44d getMatrix()
const;
131 void freezeTopology();
132 const std::vector<Alembic::Util::uint8_t> &getOpsArray()
const;
138 int32_t m_setWithOpStack;
140 std::vector<XformOp> m_ops;
155using namespace ALEMBIC_VERSION_NS;
Alembic namespace ...
Definition ArchiveInfo.cpp:39