Medical Imaging Interaction Toolkit
2025.08.99-f7084adb
Medical Imaging Interaction Toolkit
mitkPointSetDataInteractor.h
Go to the documentation of this file.
1
/*============================================================================
2
3
The Medical Imaging Interaction Toolkit (MITK)
4
5
Copyright (c) German Cancer Research Center (DKFZ)
6
All rights reserved.
7
8
Use of this source code is governed by a 3-clause BSD license that can be
9
found in the LICENSE file.
10
11
============================================================================*/
12
13
#ifndef mitkPointSetDataInteractor_h
14
#define mitkPointSetDataInteractor_h
15
16
#include "itkObject.h"
17
#include "itkObjectFactory.h"
18
#include "itkSmartPointer.h"
19
#include "
mitkCommon.h
"
20
#include "
mitkDataInteractor.h
"
21
#include <
MitkCoreExports.h
>
22
#include <
mitkPointSet.h
>
23
24
namespace
mitk
25
{
62
// Inherit from DataInteratcor, this provides functionality of a state machine and configurable inputs.
63
class
MITKCORE_EXPORT
PointSetDataInteractor
:
public
DataInteractor
64
{
65
public
:
66
mitkClassMacro
(
PointSetDataInteractor
,
DataInteractor
);
67
itkFactorylessNewMacro(
Self
);
68
itkCloneMacro(
Self
);
69
74
void
SetAccuracy(
float
accuracy);
75
81
void
SetMaxPoints(
unsigned
int
maxNumber = 0);
82
83
void
EnableMovement(
bool
enabled =
true
);
84
void
EnableRemoval(
bool
enabled =
true
);
85
90
void
SetBounds(
BaseGeometry
* geometry);
91
92
protected
:
93
PointSetDataInteractor
();
94
~
PointSetDataInteractor
()
override
;
95
100
void
ConnectActionsAndFunctions()
override
;
101
107
void
DataNodeChanged()
override
;
108
116
virtual
int
GetPointIndexByPosition(
Point3D
position,
unsigned
int
time = 0,
float
accuracy = -1);
117
118
virtual
bool
CheckSelection(
const
InteractionEvent
*interactionEvent);
119
124
virtual
void
AddPoint(
StateMachineAction
*,
InteractionEvent
*event);
125
127
virtual
void
RemovePoint(
StateMachineAction
*,
InteractionEvent
*interactionEvent);
128
133
virtual
void
IsClosedContour(
StateMachineAction
*,
InteractionEvent
*);
134
138
virtual
void
MovePoint(
StateMachineAction
*,
InteractionEvent
*);
139
143
virtual
void
InitMove(
StateMachineAction
*,
InteractionEvent
*interactionEvent);
144
148
virtual
void
FinishMove(
StateMachineAction
*,
InteractionEvent
*);
149
153
virtual
void
SelectPoint(
StateMachineAction
*,
InteractionEvent
*);
154
158
virtual
void
UnSelectPointAtPosition(
StateMachineAction
*,
InteractionEvent
*);
159
163
virtual
void
UnSelectAll(
StateMachineAction
*,
InteractionEvent
*);
164
170
virtual
void
UpdatePointSet(
StateMachineAction
*stateMachineAction,
InteractionEvent
*);
171
175
virtual
void
Abort(
StateMachineAction
*,
InteractionEvent
*);
176
177
virtual
void
KeyDelete(
StateMachineAction
*,
InteractionEvent
*);
178
182
Point3D
m_LastPoint
;
183
185
Vector3D
m_SumVec
;
186
187
// DATA
188
PointSet::Pointer
m_PointSet
;
189
int
m_MaxNumberOfPoints
;
// maximum of allowed number of points
190
float
m_SelectionAccuracy
;
// accuracy that's needed to select a point
191
bool
m_IsMovementEnabled
;
192
bool
m_IsRemovalEnabled
;
193
mitk::BaseGeometry::Pointer
m_Bounds
;
194
195
// FUNCTIONS
196
void
UnselectAll(
unsigned
int
timeStep,
ScalarType
timeInMs);
197
void
SelectPoint(
int
position,
unsigned
int
timeStep,
ScalarType
timeInMS);
198
};
199
}
200
#endif
mitk::InteractionEvent
Definition:
mitkInteractionEvent.h:26
mitk::PointSetDataInteractor::m_PointSet
PointSet::Pointer m_PointSet
Definition:
mitkPointSetDataInteractor.h:188
mitk::PointSetDataInteractor::m_IsMovementEnabled
bool m_IsMovementEnabled
Definition:
mitkPointSetDataInteractor.h:191
itk::SmartPointer< Self >
mitk::PointSetDataInteractor::m_IsRemovalEnabled
bool m_IsRemovalEnabled
Definition:
mitkPointSetDataInteractor.h:192
mitkPointSet.h
mitk
Find image slices visible on a given plane.
Definition:
RenderingTests.dox:1
mitk::Vector< ScalarType, 3 >
MitkCoreExports.h
mitk::BaseGeometry
BaseGeometry Describes the geometry of a data object.
Definition:
mitkBaseGeometry.h:94
mitk::Point< ScalarType, 3 >
mitkCommon.h
mitkDataInteractor.h
mitk::PointSetDataInteractor::m_MaxNumberOfPoints
int m_MaxNumberOfPoints
Definition:
mitkPointSetDataInteractor.h:189
mitk::StateMachineAction
Represents an action, that is executed after a certain event (in statemachine-mechanism) TODO: implem...
Definition:
mitkStateMachineAction.h:30
mitk::PointSetDataInteractor::m_SelectionAccuracy
float m_SelectionAccuracy
Definition:
mitkPointSetDataInteractor.h:190
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition:
mitkCommon.h:36
mitk::DataInteractor
Base class from with interactors that handle DataNodes are to be derived.
Definition:
mitkDataInteractor.h:48
mitk::PointSetDataInteractor
Implementation of the PointSetInteractor.
Definition:
mitkPointSetDataInteractor.h:63
mitk::PointSetDataInteractor::m_Bounds
mitk::BaseGeometry::Pointer m_Bounds
Definition:
mitkPointSetDataInteractor.h:193
mitk::PointSetDataInteractor::m_LastPoint
Point3D m_LastPoint
to calculate a direction vector from last point and actual point
Definition:
mitkPointSetDataInteractor.h:182
mitk::PointSetDataInteractor::m_SumVec
Vector3D m_SumVec
summ-vector for Movement
Definition:
mitkPointSetDataInteractor.h:185
MITKCORE_EXPORT
#define MITKCORE_EXPORT
Definition:
MitkCoreExports.h:15
mitk::ScalarType
double ScalarType
Definition:
mitkNumericConstants.h:20
src
MITK
Modules
Core
include
mitkPointSetDataInteractor.h
Generated on Mon Sep 1 2025 02:39:51 for Medical Imaging Interaction Toolkit by
1.8.17