5 #ifndef CNOID_BASE_SCENE_DRAG_PROJECTOR_H 6 #define CNOID_BASE_SCENE_DRAG_PROJECTOR_H 13 class SceneDragProjectorImpl;
21 enum DragMode { DRAG_NONE, DRAG_ROTATION, DRAG_TRANSLATION };
24 bool isDragging()
const;
28 void setInitialPosition(
const Affine3& T);
29 void setInitialTranslation(
const Vector3& p);
30 void setInitialRotation(
const Matrix3& R);
31 const Affine3& initialPosition()
const;
34 void setRotationAxis(
const Vector3& axis);
35 const Vector3& rotationAxis()
const;
38 void setTranslationAxis(
const Vector3& axis);
39 const Vector3& translationAxis()
const;
42 void setTranslationPlaneNormal(
const Vector3& normal);
43 void setTranslationAlongViewPlane();
52 const Vector3& projectedPoint()
const;
53 const Affine3& position()
const;
54 const Matrix3& rotationMatrix()
const;
55 double rotationAngle()
const;
56 const AngleAxis& rotationAngleAxis()
const;
57 const Vector3& translation()
const;
60 SceneDragProjectorImpl* impl;
Eigen::AngleAxisd AngleAxis
Definition: EigenTypes.h:66
Eigen::Affine3d Affine3
Definition: EigenTypes.h:64
Definition: SceneDragProjector.h:15
DragMode
Definition: SceneDragProjector.h:21
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Eigen::Vector3d Vector3
Definition: EigenTypes.h:58
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
Eigen::Matrix3d Matrix3
Definition: EigenTypes.h:57