Medical Imaging Interaction Toolkit
2024.12.99-0da743f6
Medical Imaging Interaction Toolkit
mitkSurfaceDeformationDataInteractor3D.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 mitkSurfaceDeformationDataInteractor3D_h
14
#define mitkSurfaceDeformationDataInteractor3D_h
15
16
#include "
MitkDataTypesExtExports.h
"
17
#include "
mitkDataInteractor.h
"
18
#include "
mitkSurface.h
"
19
20
namespace
mitk
21
{
28
// Inherit from DataInteratcor, this provides functionality of a state machine and configurable inputs.
29
class
MITKDATATYPESEXT_EXPORT
SurfaceDeformationDataInteractor3D
:
public
DataInteractor
30
{
31
public
:
32
mitkClassMacro
(
SurfaceDeformationDataInteractor3D
,
DataInteractor
);
33
itkFactorylessNewMacro(
Self
);
34
itkCloneMacro(
Self
);
35
36
protected :
SurfaceDeformationDataInteractor3D
();
37
~
SurfaceDeformationDataInteractor3D
()
override
;
42
void
ConnectActionsAndFunctions()
override
;
46
void
DataNodeChanged()
override
;
47
51
virtual
bool
CheckOverObject(
const
InteractionEvent
*);
52
virtual
void
SelectObject(
StateMachineAction
*,
InteractionEvent
*);
53
virtual
void
DeselectObject(
StateMachineAction
*,
InteractionEvent
*);
54
virtual
void
InitDeformation(
StateMachineAction
*,
InteractionEvent
*);
55
virtual
void
DeformObject(
StateMachineAction
*,
InteractionEvent
*);
56
virtual
void
ScaleRadius(
StateMachineAction
*,
InteractionEvent
*);
57
58
enum
59
{
60
COLORIZATION_GAUSS
,
61
COLORIZATION_CONSTANT
62
};
63
64
private
:
65
void
ColorizeSurface(
66
vtkPolyData *polyData,
int
timeStep,
const
Point3D
&pickedPoint,
int
mode,
double
scalar = 0.0);
67
68
double
m_InitialPickedWorldPoint[4];
69
Point3D
m_InitialPickedPoint;
70
Point3D
m_SurfaceColorizationCenter;
71
72
Surface
*m_Surface;
73
vtkPolyData *m_OriginalPolyData;
74
75
double
m_GaussSigma;
76
Vector3D
m_ObjectNormal;
77
};
78
}
79
#endif
mitk::InteractionEvent
Definition:
mitkInteractionEvent.h:26
mitk::SurfaceDeformationDataInteractor3D
SurfaceDeformation interaction with objects in 3D windows.
Definition:
mitkSurfaceDeformationDataInteractor3D.h:29
MitkDataTypesExtExports.h
MITKDATATYPESEXT_EXPORT
#define MITKDATATYPESEXT_EXPORT
Definition:
MitkDataTypesExtExports.h:15
mitk::Surface
Class for storing surfaces (vtkPolyData).
Definition:
mitkSurface.h:28
mitk
Find image slices visible on a given plane.
Definition:
RenderingTests.dox:1
mitkSurface.h
mitk::Vector< ScalarType, 3 >
mitk::Point< ScalarType, 3 >
mitkDataInteractor.h
mitk::SurfaceDeformationDataInteractor3D::COLORIZATION_GAUSS
@ COLORIZATION_GAUSS
Definition:
mitkSurfaceDeformationDataInteractor3D.h:60
mitk::StateMachineAction
Represents an action, that is executed after a certain event (in statemachine-mechanism) TODO: implem...
Definition:
mitkStateMachineAction.h:30
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
src
MITK
Modules
DataTypesExt
include
mitkSurfaceDeformationDataInteractor3D.h
Generated on Mon Dec 23 2024 02:13:21 for Medical Imaging Interaction Toolkit by
1.8.17