18 #ifndef itkSimplexMeshVolumeCalculator_h
19 #define itkSimplexMeshVolumeCalculator_h
49 template<
typename TInputMesh >
111 m_CenterMap = PointMapType::New();
121 typedef typename SimplexPolygonType::PointIdIterator PointIdIterator;
130 m_Mesh->GetPoint(*it, &p);
131 center += p.GetVectorFromOrigin();
139 m_CenterMap->InsertElement(cellId, center);
174 itkGetConstMacro(Volume,
double);
177 itkGetConstMacro(Area,
double);
182 virtual
void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
192 void CreateTriangles();
226 #ifndef ITK_MANUAL_INSTANTIATION
227 #include "itkSimplexMeshVolumeCalculator.hxx"
Light weight base class for most itk classes.
A template class used to implement a visitor object.
PointMapPointer GetCenterMap()
visits all polygon cells and compute the cell centers
itk::CellInterfaceVisitorImplementation< InputPixelType, InputCellTraitsType, SimplexPolygonType, SimplexCellVisitor > SimplexVisitorInterfaceType
SimplexMeshVolumeCalculator Self
InputMeshType::CellType SimplexCellType
The class represents a 2-simplex mesh.
A wrapper of the STL "map" container.
InputMeshType::NeighborListType InputNeighbors
signed long IndexValueType
InputMeshType::MeshTraits::CellTraits InputCellTraitsType
InputMeshType::PointsContainer InputPointsContainer
virtual ~SimplexCellVisitor()
itk::PolygonCell< SimplexCellType > SimplexPolygonType
virtual PointIdIterator PointIdsEnd(void) override
unsigned long SizeValueType
ImageBaseType::SpacingType VectorType
SmartPointer< const Self > ConstPointer
InputPointType::VectorType VectorType
SizeValueType IdentifierType
InputMeshType::ConstPointer InputMeshConstPointer
CovariantVector< typename VectorType::ValueType, 3 > CovariantVectorType
SmartPointer< Self > Pointer
ImageBaseType::PointType PointType
virtual PointIdIterator PointIdsBegin(void) override
itk::MapContainer< IdentifierType, InputPointType > PointMapType
PointMapPointer m_CenterMap
visits all polygon cells and compute the cell centers
InputMeshType::PixelType InputPixelType
Represents a polygon in a Mesh.
PointMapType::Pointer PointMapPointer
InputMeshType::PointType InputPointType
void SetMesh(InputMeshPointer mesh)
visits all polygon cells and compute the cell centers
InputMeshType::NeighborListType::iterator InputNeighborsIterator
InputPointsContainer::ConstIterator InputPointsContainerIterator
Adapted from itkSimplexMeshToTriangleFilter to calculate the volume of a simplex mesh using the baryc...
InputMeshType::Pointer InputMeshPointer
Control indentation during Print() invocation.
CellMultiVisitorType::Pointer CellMultiVisitorPointer
InputMeshPointer m_Mesh
visits all polygon cells and compute the cell centers
virtual unsigned int GetNumberOfPoints(void) const override
void Visit(IdentifierType cellId, SimplexPolygonType *poly)
visits all polygon cells and compute the cell centers
Base class for most ITK classes.
A templated class holding a n-Dimensional covariant vector.
InputPointsContainer::ConstPointer InputPointsContainerPointer
SimplexCellType::MultiVisitor CellMultiVisitorType
SimplexVisitorInterfaceType::Pointer SimplexVisitorInterfacePointer