13 #ifndef mitkPointSetDataInteractor_h
14 #define mitkPointSetDataInteractor_h
16 #include <itkObject.h>
17 #include <itkObjectFactory.h>
18 #include <itkSmartPointer.h>
63 itkFactorylessNewMacro(Self);
Abstract base class describing the geometry of a data object.
Base class for interactors that operate on DataNodes.
Base class for all interaction events in MITK.
Implementation of the PointSetInteractor.
virtual void UnSelectPointAtPosition(StateMachineAction *, InteractionEvent *)
virtual bool CanAddPoint(const InteractionEvent *interactionEvent)
Check whether a new point can be added.
void DataNodeChanged() override
void ConnectActionsAndFunctions() override
PointSet::Pointer m_PointSet
virtual void FinishMove(StateMachineAction *, InteractionEvent *)
virtual int GetPointIndexByPosition(Point3D position, unsigned int time=0, float accuracy=-1)
Return index in PointSet of the point that is within given accuracy to the provided position.
void UnselectAll(unsigned int timeStep, ScalarType timeInMs)
virtual bool CheckSelection(const InteractionEvent *interactionEvent)
Check whether the pointer is over a point in the point set.
float m_SelectionAccuracy
virtual void AddPoint(StateMachineAction *, InteractionEvent *event)
Vector3D m_SumVec
summ-vector for Movement
virtual void InitMove(StateMachineAction *, InteractionEvent *interactionEvent)
virtual void UpdatePointSet(StateMachineAction *stateMachineAction, InteractionEvent *)
Update the member variable that holds the point set.
virtual void KeyDelete(StateMachineAction *, InteractionEvent *)
Delete the currently selected point via keyboard action.
~PointSetDataInteractor() override
virtual void MovePoint(StateMachineAction *, InteractionEvent *)
void SelectPoint(int position, unsigned int timeStep, ScalarType timeInMS)
virtual void RemovePoint(StateMachineAction *, InteractionEvent *interactionEvent)
virtual void UnSelectAll(StateMachineAction *, InteractionEvent *)
void Enable3DPointPlacement(bool enabled=true)
Enable or disable point placement in 3D render windows.
void EnableMovement(bool enabled=true)
Enable or disable point movement.
void SetBounds(BaseGeometry *geometry)
Set the boundaries within which points can be placed.
virtual void SelectPoint(StateMachineAction *, InteractionEvent *)
mitk::BaseGeometry::Pointer m_Bounds
virtual void IsClosedContour(StateMachineAction *, InteractionEvent *)
void SetAccuracy(float accuracy)
Set the maximum distance for selecting a point by position.
void SetMaxPoints(unsigned int maxNumber=0)
Set the maximum number of points allowed in the point set.
bool m_Is3DPointPlacementEnabled
mitkClassMacro(PointSetDataInteractor, DataInteractor)
void EnableRemoval(bool enabled=true)
Enable or disable point removal.
virtual void Abort(StateMachineAction *, InteractionEvent *)
Point3D m_LastPoint
to calculate a direction vector from last point and actual point
Represents an action that is executed after a certain event in the state machine mechanism.
Find image slices visible on a given plane.
double ScalarType
Scalar type used throughout MITK for geometric computations.