13 #ifndef mitkGizmoInteractor_h 14 #define mitkGizmoInteractor_h 24 #include <vtkCellPicker.h> 25 #include <vtkSmartPointer.h> 34 class InteractionPositionEvent;
56 itkFactorylessNewMacro(
Self);
66 void SetManipulatedObjectNode(
DataNode *node);
73 void ConnectActionsAndFunctions()
override;
103 void ApplyTranslationToManipulatedObject(
const Vector3D &projectedMovement);
106 void ApplyEqualScalingToManipulatedObject(
double scalingFactor);
109 void ApplyRotationToManipulatedObject(
double angle_deg);
118 void UpdateHandleHighlight();
127 std::map<BaseRenderer *, vtkSmartPointer<vtkCellPicker>> m_Picker;
136 double m_ColorForHighlight[4];
139 double m_ColorReplacedByHighlight[4];
141 Point2D m_InitialClickPosition2D;
142 double m_InitialClickPosition2DZ;
143 Point3D m_InitialClickPosition3D;
145 Point2D m_InitialGizmoCenter2D;
146 Point3D m_InitialGizmoCenter3D;
151 std::unique_ptr<Operation> m_FinalDoOperation;
152 std::unique_ptr<Operation> m_FinalUndoOperation;
Super class for all position events.
DataCollection - Class to facilitate loading/accessing structured data.
itk::SmartPointer< Self > Pointer
Base class from with interactors that handle DataNodes are to be derived.
HandleType
Names for the different parts of the gizmo.
Represents an action, that is executed after a certain event (in statemachine-mechanism) TODO: implem...
#define mitkClassMacro(className, SuperClassName)
Class for nodes of the DataTree.