ITK
5.0.0
Insight Segmentation and Registration Toolkit
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
ITK
Modules
Core
QuadEdgeMesh
include
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h
Go to the documentation of this file.
1
/*=========================================================================
2
*
3
* Copyright Insight Software Consortium
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 itkQuadEdgeMeshEulerOperatorFlipEdgeFunction_h
19
#define itkQuadEdgeMeshEulerOperatorFlipEdgeFunction_h
20
21
#include "
itkQuadEdgeMeshFunctionBase.h
"
22
23
namespace
itk
24
{
38
template
<
typename
TMesh,
typename
TQEType >
39
class
ITK_TEMPLATE_EXPORT
QuadEdgeMeshEulerOperatorFlipEdgeFunction
:
40
public
QuadEdgeMeshFunctionBase
< TMesh, TQEType * >
41
{
42
public
:
43
ITK_DISALLOW_COPY_AND_ASSIGN(
QuadEdgeMeshEulerOperatorFlipEdgeFunction
);
44
46
using
Self
=
QuadEdgeMeshEulerOperatorFlipEdgeFunction
;
47
using
Superclass
=
QuadEdgeMeshFunctionBase< TMesh, TQEType * >
;
48
using
Pointer
=
SmartPointer< Self >
;
49
using
ConstPointer
=
SmartPointer< const Self >
;
50
51
itkNewMacro(
Self
);
53
itkTypeMacro(
QuadEdgeMeshEulerOperatorFlipEdgeFunction
,
54
QuadEdgeMeshFunctionBase
);
55
57
using
QEType
= TQEType;
58
59
using
MeshType
=
typename
Superclass::MeshType;
60
using
OutputType
=
typename
Superclass::OutputType;
61
62
enum
EdgeStatusType
{
63
STANDARD_CONFIG = 0,
64
EDGE_NULL
,
65
MESH_NULL
,
66
NON_INTERNAL_EDGE
,
67
NON_TRIANGULAR_RIGHT_FACE
,
68
NON_TRIANGULAR_LEFT_FACE
,
69
EXISTING_OPPOSITE_EDGE
70
};
71
73
virtual
OutputType Evaluate(QEType *h);
74
75
// itkGetConstMacro( EdgeStatus, EdgeStatusType );
76
77
protected
:
78
QuadEdgeMeshEulerOperatorFlipEdgeFunction
();
79
~
QuadEdgeMeshEulerOperatorFlipEdgeFunction
()
override
=
default
;
80
81
void
PrintSelf(std::ostream & os,
Indent
indent)
const override
;
82
83
EdgeStatusType
m_EdgeStatus
;
84
85
void
CheckStatus(
QEType
*h);
86
87
OutputType
Process(
QEType
*h);
88
};
89
}
// end namespace itk
90
91
#include "itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.hxx"
92
93
#endif
itk::LightObject
Light weight base class for most itk classes.
Definition:
itkLightObject.h:55
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::EdgeStatusType
EdgeStatusType
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:62
itkQuadEdgeMeshFunctionBase.h
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::OutputType
typename Superclass::OutputType OutputType
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:60
itk::QuadEdgeMeshFunctionBase
Definition:
itkQuadEdgeMeshFunctionBase.h:55
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::NON_TRIANGULAR_RIGHT_FACE
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:67
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::MESH_NULL
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:65
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction
Flip an edge.
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:39
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::m_EdgeStatus
EdgeStatusType m_EdgeStatus
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:83
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::MeshType
typename Superclass::MeshType MeshType
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:59
itk::Indent
Control indentation during Print() invocation.
Definition:
itkIndent.h:49
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::NON_TRIANGULAR_LEFT_FACE
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:68
itk::SmartPointer< Self >
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::NON_INTERNAL_EDGE
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:66
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::QEType
TQEType QEType
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:57
itk::QuadEdgeMeshEulerOperatorFlipEdgeFunction::EDGE_NULL
Definition:
itkQuadEdgeMeshEulerOperatorFlipEdgeFunction.h:64
Generated on Sun Mar 24 2019 03:09:35 for ITK by
1.8.5