ITK  5.0.0
Insight Segmentation and Registration Toolkit
itkCellAreaTriangleCellSubdivisionCriterion.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 
19 #ifndef itkCellAreaTriangleCellSubdivisionCriterion_h
20 #define itkCellAreaTriangleCellSubdivisionCriterion_h
21 
23 #include "itkObjectFactory.h"
24 #include "itkTriangleHelper.h"
25 #include "itkNumericTraits.h"
26 
27 
28 namespace itk
29 {
35 template< typename TSubdivisionFilter >
37 {
38 public:
43 
44  using MeshType = typename Superclass::MeshType;
54  using PointType = typename Superclass::PointType;
58  using CellType = typename Superclass::CellType;
59  using QEType = typename Superclass::QEType;
62 
64  itkTypeMacro( CellAreaTriangleCellSubdivisionCriterion, QuadEdgeMeshTriangleCellSubdivisionCriterion );
65  itkNewMacro( Self );
67 
68  void Compute( MeshType * mesh, SubdivisionCellContainer & cellIds ) override;
69 
70  itkGetConstMacro( MaximumArea, CoordRepType );
71  itkSetMacro( MaximumArea, CoordRepType );
72 
73 protected:
76 
77 private:
79 };
80 
81 }
82 #ifndef ITK_MANUAL_INSTANTIATION
83 #include "itkCellAreaTriangleCellSubdivisionCriterion.hxx"
84 #endif
85 
86 #endif
typename TSubdivisionFilter::SubdivisionCellContainer SubdivisionCellContainer
Light weight base class for most itk classes.
Define numeric traits for std::vector.
typename Superclass::PointsContainerIterator PointsContainerIterator
typename MeshType::PointsContainerConstIterator PointsContainerConstIterator
void Compute(MeshType *mesh, SubdivisionCellContainer &cellIds) override
typename Superclass::PointsContainerPointer PointsContainerPointer
typename MeshType::CellsContainerConstIterator CellsContainerConstIterator
typename Superclass::PointsContainerConstIterator PointsContainerConstIterator
typename Superclass::SubdivisionCellContainer SubdivisionCellContainer
typename Superclass::CellsContainerConstIterator CellsContainerConstIterator
typename Superclass::CellsContainerIterator CellsContainerIterator