18 #ifndef itkAutomaticTopologyMeshSource_h
19 #define itkAutomaticTopologyMeshSource_h
23 #include "itksys/hash_map.hxx"
110 template<
typename TOutputMesh >
154 static constexpr
unsigned int PointDimension = MeshType::PointDimension;
155 static constexpr
unsigned int MaxTopologicalDimension = MeshType::MaxTopologicalDimension;
341 IdType size = identifierArray.
Size();
343 std::sort( identifierArray.begin(), identifierArray.end() );
346 IdType *
id = &identifierArray[0];
351 hash = ( hash << 7 ) | ( hash >> 25 );
368 IdType size1 = identifierArray1.
Size();
369 IdType size2 = identifierArray2.
Size();
371 if ( size1 != size2 )
376 std::sort( identifierArray1.begin(), identifierArray1.end() );
377 std::sort( identifierArray2.begin(), identifierArray2.end() );
379 return ( identifierArray1 == identifierArray2 );
391 using CellHashMap = itksys::hash_map<
394 IdentifierArrayHashFunction,
403 #ifndef ITK_MANUAL_INSTANTIATION
404 #include "itkAutomaticTopologyMeshSource.hxx"
407 #endif // itkAutomaticTopologyMeshSource_h
typename MeshType::Pointer MeshPointer
::itk::IdentifierType IdentifierType
Represents a line segment for a Mesh.
Light weight base class for most itk classes.
itksys::hash_map< PointType, IdentifierType, StructHashFunction< PointHashType > > PointHashMap
Convenience class for generating meshes.
itksys::hash_map< Array< IdentifierType >, IdentifierType, IdentifierArrayHashFunction, IdentifierArrayEqualsFunction > CellHashMap
void GenerateData() override
CellHashMap m_CellsHashTable
Base class for all process objects that output mesh data.
unsigned long IdentifierType
IdentifierType operator()(Array< IdentifierType > identifierArray) const
typename MeshType::PointHashType PointHashType
SizeValueType IdentifierType
PointHashMap m_PointsHashTable
SizeValueType Size() const
Represents a hexahedron (cuboid) for a Mesh.
typename PointType::CoordRepType CoordinateType
TetrahedronCell represents a tetrahedron for a Mesh.
bool operator()(Array< IdentifierType > identifierArray1, Array< IdentifierType > identifierArray2) const
Represents a single vertex for a Mesh.
ImageBaseType::PointType PointType
typename MeshType::CellType CellType
Generic hash function for an arbitrary struct (or class).
Represents a quadrilateral for a Mesh.
typename CellType::CellAutoPointer CellAutoPointer
typename MeshType::PointType PointType