Slicer
5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
Modules
Loadable
Reformat
Logic
vtkSlicerReformatLogic.h
Go to the documentation of this file.
1
/*==============================================================================
2
3
Program: 3D Slicer
4
5
Copyright (c) Kitware Inc.
6
7
See COPYRIGHT.txt
8
or http://www.slicer.org/copyright/copyright.txt for details.
9
10
Unless required by applicable law or agreed to in writing, software
11
distributed under the License is distributed on an "AS IS" BASIS,
12
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
See the License for the specific language governing permissions and
14
limitations under the License.
15
16
This file was originally developed by Michael Jeulin-Lagarrigue, Kitware Inc.
17
and was partially funded by NIH grant 3P41RR013218-12S1
18
19
==============================================================================*/
20
21
// .NAME vtkSlicerReformatLogic - slicer logic class for volumes manipulation
22
// .SECTION Description
23
// This class manages the logic associated with reading, saving,
24
// and changing propertied of the volumes
25
26
#ifndef __vtkSlicerReformatLogic_h
27
#define __vtkSlicerReformatLogic_h
28
29
// Slicer includes
30
#include "
vtkSlicerModuleLogic.h
"
31
32
// MRML includes
33
34
// STD includes
35
#include <cstdlib>
36
37
#include "vtkSlicerReformatModuleLogicExport.h"
38
39
class
VTK_SLICER_REFORMAT_MODULE_LOGIC_EXPORT
vtkSlicerReformatLogic
:
public
vtkSlicerModuleLogic
40
{
41
public
:
42
static
vtkSlicerReformatLogic
*
New
();
43
typedef
vtkSlicerReformatLogic
Self
;
44
vtkTypeMacro(
vtkSlicerReformatLogic
,
vtkSlicerModuleLogic
);
45
void
PrintSelf
(ostream& os, vtkIndent indent)
override
;
46
48
static
void
SetSliceOrigin
(
vtkMRMLSliceNode
* node,
double
x,
double
y,
double
z);
49
static
void
SetSliceOrigin
(
vtkMRMLSliceNode
* node,
double
position[3]);
50
52
static
void
SetSliceNormal
(
vtkMRMLSliceNode
* node,
double
x,
double
y,
double
z);
53
static
void
SetSliceNormal
(
vtkMRMLSliceNode
* node,
double
normal[3]);
54
56
static
void
GetVolumeBounds
(
vtkMRMLSliceNode
* node,
double
bounds[6]);
57
59
static
void
GetCenterFromBounds
(
double
bounds[6],
double
center[3]);
60
64
static
void
RotateSlice
(
vtkMRMLSliceNode
* node,
int
axisIndex,
double
rotationAngleDeg);
65
66
protected
:
67
vtkSlicerReformatLogic
();
68
~vtkSlicerReformatLogic
()
override
;
69
70
private
:
71
vtkSlicerReformatLogic
(
const
vtkSlicerReformatLogic
&) =
delete
;
72
void
operator=(
const
vtkSlicerReformatLogic
&) =
delete
;
73
};
74
75
#endif
vtkMRMLSliceNode
MRML node for storing a slice through RAS space.
Definition
vtkMRMLSliceNode.h:35
vtkSlicerModuleLogic::vtkSlicerModuleLogic
vtkSlicerModuleLogic()
vtkSlicerReformatLogic::RotateSlice
static void RotateSlice(vtkMRMLSliceNode *node, int axisIndex, double rotationAngleDeg)
vtkSlicerReformatLogic::SetSliceNormal
static void SetSliceNormal(vtkMRMLSliceNode *node, double x, double y, double z)
Set the normal to the plane of the slice node.
vtkSlicerReformatLogic::New
static vtkSlicerReformatLogic * New()
vtkSlicerReformatLogic::SetSliceOrigin
static void SetSliceOrigin(vtkMRMLSliceNode *node, double x, double y, double z)
Set the world coordinate origin position.
vtkSlicerReformatLogic::SetSliceOrigin
static void SetSliceOrigin(vtkMRMLSliceNode *node, double position[3])
vtkSlicerReformatLogic::SetSliceNormal
static void SetSliceNormal(vtkMRMLSliceNode *node, double normal[3])
vtkSlicerReformatLogic::vtkSlicerReformatLogic
vtkSlicerReformatLogic()
vtkSlicerReformatLogic::GetVolumeBounds
static void GetVolumeBounds(vtkMRMLSliceNode *node, double bounds[6])
Compute and return the volume bounding box.
vtkSlicerReformatLogic::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
vtkSlicerReformatLogic::Self
vtkSlicerReformatLogic Self
Definition
vtkSlicerReformatLogic.h:43
vtkSlicerReformatLogic::~vtkSlicerReformatLogic
~vtkSlicerReformatLogic() override
vtkSlicerReformatLogic::GetCenterFromBounds
static void GetCenterFromBounds(double bounds[6], double center[3])
Compute the center from a bounds.
vtkSlicerModuleLogic.h
Generated on Wed Sep 3 2025 23:51:42 for Slicer by
1.13.0