5 #ifndef CNOID_BASE_POSITION_DRAGGER_H 6 #define CNOID_BASE_POSITION_DRAGGER_H 13 class TranslationDragger;
14 class RotationDragger;
15 class PositionDraggerImpl;
33 enum Axis { TX = 1 << 0, TY = 1 << 1, TZ = 1 << 2,
34 TRANSLATION_AXES = (TX | TY | TZ),
35 RX = 1 << 3, RY = 1 << 4, RZ = 1 << 5,
36 ROTATION_AXES = (RX | RY | RZ),
37 ALL_AXES = (TX | TY | TZ | RX | RY | RZ)
40 void setDraggableAxes(
int axisSet);
41 int draggableAxes()
const;
44 void setRadius(
double r,
double translationAxisRatio = 2.0f);
47 void setContentsDragEnabled(
bool on);
48 bool isContentsDragEnabled()
const;
49 void setDraggerAlwaysShown(
bool on);
50 bool isDraggerAlwaysShown()
const;
51 void setDraggerAlwaysHidden(
bool on);
52 bool isDraggerAlwaysHidden()
const;
54 void setUndoEnabled(
bool on);
55 bool isUndoEnabled()
const;
56 void storeCurrentPositionToHistory();
65 virtual bool isDragging()
const;
66 virtual Affine3 draggedPosition()
const;
74 virtual bool onUndoRequest();
75 virtual bool onRedoRequest();
78 PositionDraggerImpl* impl;
Definition: SceneDragger.h:13
Definition: PositionDragger.h:22
Eigen::Affine3d Affine3
Definition: EigenTypes.h:64
Definition: BoundingBox.h:17
Definition: SceneGraph.h:56
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Axis
Definition: PositionDragger.h:33
Definition: TranslationDragger.h:15
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
Definition: RotationDragger.h:14
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Definition: PositionDragger.h:25
ref_ptr< PositionDragger > PositionDraggerPtr
Definition: PositionDragger.h:82
Definition: SceneGraph.h:79