1 #line 1 "E:/jenkins/workspace/ufe-full-windows/ufe/include/transform3d.h" 27 std::array<std::array<double, 4>, 4>
matrix;
37 Vector3d(
double x,
double y,
double z);
86 typedef std::shared_ptr<Transform3d>
Ptr;
104 static bool addObserver(
113 static bool removeObserver(
130 static bool hasObserver(
135 static bool hasObservers(
const Path& path);
141 static bool hasObservers(
Rtid runTimeId);
146 static void notify(
const Path& path);
156 virtual const Path& path()
const = 0;
169 virtual void translate(
double x,
double y,
double z) = 0;
173 virtual Vector3d translation()
const = 0;
183 virtual void rotate(
double x,
double y,
double z) = 0;
193 virtual void scale(
double x,
double y,
double z) = 0;
203 virtual void rotatePivotTranslate(
double x,
double y,
double z) = 0;
207 virtual Vector3d rotatePivot()
const = 0;
217 virtual void scalePivotTranslate(
double x,
double y,
double z) = 0;
221 virtual Vector3d scalePivot()
const = 0;
240 virtual Matrix4d segmentInclusiveMatrix()
const = 0;
249 virtual Matrix4d segmentExclusiveMatrix()
const = 0;
std::shared_ptr< RotateUndoableCommand > Ptr
std::shared_ptr< Observer > Ptr
Definition of macros for symbol visibility.
std::shared_ptr< ScaleUndoableCommand > Ptr
std::shared_ptr< TranslateUndoableCommand > Ptr
Identify an object or 3D path in the scene.
std::array< double, 3 > vector
std::array< std::array< double, 4 >, 4 > matrix
Matrix class for 3D transforms.
std::shared_ptr< SceneItem > Ptr