ITK
5.2.0
Insight Toolkit
ITK
Modules
Core
SpatialObjects
include
itkMetaMeshConverter.h
Go to the documentation of this file.
1
/*=========================================================================
2
*
3
* Copyright NumFOCUS
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0.txt
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
*=========================================================================*/
18
#ifndef itkMetaMeshConverter_h
19
#define itkMetaMeshConverter_h
20
21
#include "metaMesh.h"
22
#include "
itkMeshSpatialObject.h
"
23
#include "
itkMetaConverterBase.h
"
24
25
namespace
itk
26
{
34
template
<
unsigned
int
NDimensions = 3,
35
typename
PixelType =
unsigned
char,
36
typename
TMeshTraits = DefaultStaticMeshTraits<PixelType, NDimensions, NDimensions>>
37
class
ITK_TEMPLATE_EXPORT
MetaMeshConverter
:
public
MetaConverterBase
<NDimensions>
38
{
39
public
:
40
ITK_DISALLOW_COPY_AND_MOVE(
MetaMeshConverter
);
41
43
using
Self
=
MetaMeshConverter
;
44
using
Superclass
=
MetaConverterBase<NDimensions>
;
45
using
Pointer
=
SmartPointer<Self>
;
46
using
ConstPointer
=
SmartPointer<const Self>
;
47
49
itkNewMacro(
Self
);
50
52
itkTypeMacro(
MetaMeshConverter
,
MetaConverterBase
);
53
54
using
SpatialObjectType
=
typename
Superclass::SpatialObjectType;
55
using
SpatialObjectPointer
=
typename
SpatialObjectType::Pointer;
56
using
MetaObjectType
=
typename
Superclass::MetaObjectType;
57
59
using
MeshType
=
itk::Mesh<PixelType, NDimensions, TMeshTraits>
;
60
using
MeshSpatialObjectType
=
MeshSpatialObject<MeshType>
;
61
using
MeshSpatialObjectPointer
=
typename
MeshSpatialObjectType::Pointer
;
62
using
MeshSpatialObjectConstPointer
=
typename
MeshSpatialObjectType::ConstPointer
;
63
using
MeshMetaObjectType
= MetaMesh;
64
66
SpatialObjectPointer
67
MetaObjectToSpatialObject(
const
MetaObjectType
* mo)
override
;
68
70
MetaObjectType
*
71
SpatialObjectToMetaObject(
const
SpatialObjectType
* so)
override
;
72
73
protected
:
75
MetaObjectType
*
76
CreateMetaObject()
override
;
77
78
MetaMeshConverter
() =
default
;
79
~
MetaMeshConverter
()
override
=
default
;
80
};
81
}
// end namespace itk
82
83
#ifndef ITK_MANUAL_INSTANTIATION
84
# include "itkMetaMeshConverter.hxx"
85
#endif
86
87
#endif
itk::MetaMeshConverter
converts between MetaObject<->SpatialObject.
Definition:
itkMetaMeshConverter.h:37
itk::MeshSpatialObject
Implementation of an Mesh as spatial object.
Definition:
itkMeshSpatialObject.h:38
itk::SmartPointer< Self >
itk::MetaMeshConverter::MeshMetaObjectType
MetaMesh MeshMetaObjectType
Definition:
itkMetaMeshConverter.h:63
itkMeshSpatialObject.h
itk::LightObject
Light weight base class for most itk classes.
Definition:
itkLightObject.h:59
itk::MetaMeshConverter::MeshSpatialObjectPointer
typename MeshSpatialObjectType::Pointer MeshSpatialObjectPointer
Definition:
itkMetaMeshConverter.h:61
itk::MetaConverterBase
Base class for MetaObject<->SpatialObject converters.
Definition:
itkMetaConverterBase.h:42
itk::MetaMeshConverter::SpatialObjectPointer
typename SpatialObjectType::Pointer SpatialObjectPointer
Definition:
itkMetaMeshConverter.h:55
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition:
itkAnnulusOperator.h:24
itk::Mesh
Implements the N-dimensional mesh structure.
Definition:
itkMesh.h:114
itk::MetaMeshConverter::MeshSpatialObjectConstPointer
typename MeshSpatialObjectType::ConstPointer MeshSpatialObjectConstPointer
Definition:
itkMetaMeshConverter.h:62
itk::MetaMeshConverter::MetaObjectType
typename Superclass::MetaObjectType MetaObjectType
Definition:
itkMetaMeshConverter.h:56
itk::MetaMeshConverter::SpatialObjectType
typename Superclass::SpatialObjectType SpatialObjectType
Definition:
itkMetaMeshConverter.h:54
itkMetaConverterBase.h
Generated on Thu Apr 1 2021 01:55:44 for ITK by
1.8.16