Slicer
5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Toggle main menu visibility
Main Page
Related Pages
Classes
Class Index
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
Enumerations
a
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
Related Symbols
a
e
f
i
m
o
p
r
s
w
Namespaces
Namespace List
Namespace Members
All
_
a
c
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
v
Functions
Variables
a
c
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
v
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Functions
a
c
e
i
l
n
p
q
r
s
t
v
Variables
Typedefs
a
d
g
i
l
m
n
p
q
r
s
t
v
Enumerations
Enumerator
Macros
b
c
d
e
f
g
i
m
o
p
s
t
u
v
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Loading...
Searching...
No Matches
Modules
Loadable
Markups
VTKWidgets
vtkSlicerPlaneWidget.h
Go to the documentation of this file.
1
/*==============================================================================
2
3
Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
4
Queen's University, Kingston, ON, Canada. All Rights Reserved.
5
6
See COPYRIGHT.txt
7
or http://www.slicer.org/copyright/copyright.txt for details.
8
9
Unless required by applicable law or agreed to in writing, software
10
distributed under the License is distributed on an "AS IS" BASIS,
11
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
See the License for the specific language governing permissions and
13
limitations under the License.
14
15
This file was originally developed by Kyle Sunderland, PerkLab, Queen's University
16
and was supported through CANARIE's Research Software Program, Cancer
17
Care Ontario, OpenAnatomy, and Brigham and Women's Hospital through NIH grant R01MH112748.
18
19
==============================================================================*/
20
28
29
#ifndef vtkSlicerPlaneWidget_h
30
#define vtkSlicerPlaneWidget_h
31
32
#include "vtkSlicerMarkupsModuleVTKWidgetsExport.h"
33
#include "
vtkSlicerMarkupsWidget.h
"
34
35
class
vtkSlicerMarkupsWidgetRepresentation
;
36
class
vtkPolyData;
37
class
vtkIdList;
38
39
class
VTK_SLICER_MARKUPS_MODULE_VTKWIDGETS_EXPORT
vtkSlicerPlaneWidget
:
public
vtkSlicerMarkupsWidget
40
{
41
public
:
43
static
vtkSlicerPlaneWidget
*
New
();
44
46
vtkTypeMacro(
vtkSlicerPlaneWidget
,
vtkSlicerMarkupsWidget
);
47
49
vtkSlicerMarkupsWidgetCreateInstanceMacro
(
vtkSlicerPlaneWidget
);
50
52
enum
53
{
54
WidgetStateTranslatePlane
=
WidgetStateMarkups_Last
,
// translating the plane
55
WidgetStateSymmetricScale
,
// Scaling the plane without moving the center
56
WidgetStateMarkupsPlane_Last
57
};
58
60
enum
61
{
62
WidgetEventControlPointPlace
=
WidgetEventMarkups_Last
,
63
WidgetEventControlPointPlacePlaneNormal
,
64
WidgetEventPlaneMoveStart
,
65
WidgetEventPlaneMoveEnd
,
66
WidgetEventSymmetricScaleStart
,
67
WidgetEventSymmetricScaleEnd
,
68
WidgetEventMarkupsPlane_Last
69
};
70
72
void
CreateDefaultRepresentation
(
vtkMRMLMarkupsDisplayNode
* markupsDisplayNode,
vtkMRMLAbstractViewNode
* viewNode, vtkRenderer* renderer)
override
;
73
74
bool
PlacePoint
(
vtkMRMLInteractionEventData
* eventData)
override
;
75
virtual
bool
PlacePlaneNormal
(
vtkMRMLInteractionEventData
* eventData);
76
77
bool
CanProcessInteractionEvent
(
vtkMRMLInteractionEventData
* eventData,
double
& distance2)
override
;
78
bool
ProcessInteractionEvent
(
vtkMRMLInteractionEventData
* eventData)
override
;
79
bool
ProcessUpdatePlaneFromViewNormal
(
vtkMRMLInteractionEventData
* event);
80
bool
ProcessPlaneMoveStart
(
vtkMRMLInteractionEventData
* event);
81
bool
ProcessPlaneMoveEnd
(
vtkMRMLInteractionEventData
* event);
82
bool
ProcessMouseMove
(
vtkMRMLInteractionEventData
* eventData)
override
;
83
bool
ProcessPlaneTranslate
(
vtkMRMLInteractionEventData
* event);
84
bool
ProcessWidgetSymmetricScaleStart
(
vtkMRMLInteractionEventData
* eventData);
85
bool
ProcessPlaneSymmetricScale
(
vtkMRMLInteractionEventData
* event);
86
bool
ProcessEndMouseDrag
(
vtkMRMLInteractionEventData
* eventData)
override
;
87
bool
ProcessWidgetStopPlace
(
vtkMRMLInteractionEventData
* eventData)
override
;
88
89
protected
:
90
vtkSlicerPlaneWidget
();
91
~vtkSlicerPlaneWidget
()
override
;
92
93
private
:
94
vtkSlicerPlaneWidget
(
const
vtkSlicerPlaneWidget
&) =
delete
;
95
void
operator=(
const
vtkSlicerPlaneWidget
&) =
delete
;
96
};
39
class
VTK_SLICER_MARKUPS_MODULE_VTKWIDGETS_EXPORT
vtkSlicerPlaneWidget
:
public
vtkSlicerMarkupsWidget
{
…
};
97
98
#endif
vtkMRMLAbstractViewNode
Abstract MRML node to represent a view. The class holds the properties common to any view type (3D,...
Definition
vtkMRMLAbstractViewNode.h:40
vtkMRMLInteractionEventData
Definition
vtkMRMLInteractionEventData.h:36
vtkMRMLMarkupsDisplayNode
Definition
vtkMRMLMarkupsDisplayNode.h:45
vtkSlicerMarkupsWidgetRepresentation
Class for rendering a markups node.
Definition
vtkSlicerMarkupsWidgetRepresentation.h:73
vtkSlicerMarkupsWidget::vtkSlicerMarkupsWidget
vtkSlicerMarkupsWidget()
vtkSlicerMarkupsWidget::WidgetStateMarkups_Last
@ WidgetStateMarkups_Last
Definition
vtkSlicerMarkupsWidget.h:63
vtkSlicerMarkupsWidget::WidgetEventMarkups_Last
@ WidgetEventMarkups_Last
Definition
vtkSlicerMarkupsWidget.h:79
vtkSlicerPlaneWidget::WidgetEventSymmetricScaleEnd
@ WidgetEventSymmetricScaleEnd
Definition
vtkSlicerPlaneWidget.h:67
vtkSlicerPlaneWidget::WidgetEventControlPointPlace
@ WidgetEventControlPointPlace
Definition
vtkSlicerPlaneWidget.h:62
vtkSlicerPlaneWidget::WidgetEventSymmetricScaleStart
@ WidgetEventSymmetricScaleStart
Definition
vtkSlicerPlaneWidget.h:66
vtkSlicerPlaneWidget::WidgetEventPlaneMoveEnd
@ WidgetEventPlaneMoveEnd
Definition
vtkSlicerPlaneWidget.h:65
vtkSlicerPlaneWidget::WidgetEventControlPointPlacePlaneNormal
@ WidgetEventControlPointPlacePlaneNormal
Definition
vtkSlicerPlaneWidget.h:63
vtkSlicerPlaneWidget::WidgetEventMarkupsPlane_Last
@ WidgetEventMarkupsPlane_Last
Definition
vtkSlicerPlaneWidget.h:68
vtkSlicerPlaneWidget::WidgetEventPlaneMoveStart
@ WidgetEventPlaneMoveStart
Definition
vtkSlicerPlaneWidget.h:64
vtkSlicerPlaneWidget::ProcessUpdatePlaneFromViewNormal
bool ProcessUpdatePlaneFromViewNormal(vtkMRMLInteractionEventData *event)
vtkSlicerPlaneWidget::vtkSlicerPlaneWidget
vtkSlicerPlaneWidget()
vtkSlicerPlaneWidget::CreateDefaultRepresentation
void CreateDefaultRepresentation(vtkMRMLMarkupsDisplayNode *markupsDisplayNode, vtkMRMLAbstractViewNode *viewNode, vtkRenderer *renderer) override
Create the default widget representation and initializes the widget and representation.
vtkSlicerPlaneWidget::New
static vtkSlicerPlaneWidget * New()
Instantiate this class.
vtkSlicerPlaneWidget::ProcessPlaneMoveStart
bool ProcessPlaneMoveStart(vtkMRMLInteractionEventData *event)
vtkSlicerPlaneWidget::ProcessInteractionEvent
bool ProcessInteractionEvent(vtkMRMLInteractionEventData *eventData) override
Process interaction event.
vtkSlicerPlaneWidget::vtkSlicerMarkupsWidgetCreateInstanceMacro
vtkSlicerMarkupsWidgetCreateInstanceMacro(vtkSlicerPlaneWidget)
Create instance of the markups widget.
vtkSlicerPlaneWidget::ProcessMouseMove
bool ProcessMouseMove(vtkMRMLInteractionEventData *eventData) override
vtkSlicerPlaneWidget::ProcessWidgetStopPlace
bool ProcessWidgetStopPlace(vtkMRMLInteractionEventData *eventData) override
vtkSlicerPlaneWidget::ProcessPlaneSymmetricScale
bool ProcessPlaneSymmetricScale(vtkMRMLInteractionEventData *event)
vtkSlicerPlaneWidget::PlacePlaneNormal
virtual bool PlacePlaneNormal(vtkMRMLInteractionEventData *eventData)
vtkSlicerPlaneWidget::ProcessPlaneMoveEnd
bool ProcessPlaneMoveEnd(vtkMRMLInteractionEventData *event)
vtkSlicerPlaneWidget::PlacePoint
bool PlacePoint(vtkMRMLInteractionEventData *eventData) override
vtkSlicerPlaneWidget::~vtkSlicerPlaneWidget
~vtkSlicerPlaneWidget() override
vtkSlicerPlaneWidget::CanProcessInteractionEvent
bool CanProcessInteractionEvent(vtkMRMLInteractionEventData *eventData, double &distance2) override
Return true if the widget can process the event.
vtkSlicerPlaneWidget::ProcessWidgetSymmetricScaleStart
bool ProcessWidgetSymmetricScaleStart(vtkMRMLInteractionEventData *eventData)
vtkSlicerPlaneWidget::ProcessEndMouseDrag
bool ProcessEndMouseDrag(vtkMRMLInteractionEventData *eventData) override
vtkSlicerPlaneWidget::ProcessPlaneTranslate
bool ProcessPlaneTranslate(vtkMRMLInteractionEventData *event)
vtkSlicerPlaneWidget::WidgetStateTranslatePlane
@ WidgetStateTranslatePlane
Definition
vtkSlicerPlaneWidget.h:54
vtkSlicerPlaneWidget::WidgetStateSymmetricScale
@ WidgetStateSymmetricScale
Definition
vtkSlicerPlaneWidget.h:55
vtkSlicerPlaneWidget::WidgetStateMarkupsPlane_Last
@ WidgetStateMarkupsPlane_Last
Definition
vtkSlicerPlaneWidget.h:56
vtkSlicerMarkupsWidget.h
Generated on Tue Apr 8 2025 04:46:47 for Slicer by
1.13.0