ITK  5.0.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
itk::Mesh< TPixelType, VDimension, TMeshTraits > Class Template Reference

#include <itkMesh.h>

+ Inheritance diagram for itk::Mesh< TPixelType, VDimension, TMeshTraits >:
+ Collaboration diagram for itk::Mesh< TPixelType, VDimension, TMeshTraits >:

Detailed Description

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
class itk::Mesh< TPixelType, VDimension, TMeshTraits >

Implements the N-dimensional mesh structure.

Overview
Mesh implements the N-dimensional mesh structure for ITK. It provides an API to perform operations on points, cells, boundaries, etc., but does not tie down the underlying implementation and storage. A "MeshTraits" structure is used to define the container and identifier types that will be used to access the mesh. See DefaultStaticMeshTraits for the set of type definitions needed. All types that are defined in the "MeshTraits" structure will have duplicate type alias in the resulting mesh itself.

Mesh is an adaptive, evolving structure. Typically points and cells are created, with the cells referring to their defining points. If additional topological information is required, then BuildCellLinks() is called and links from the points back to the cells that use them are created. This allows implicit topological information about the faces and edges of the cells to be determined. (For example, a "face" neighbor to a cell can be determined by intersection the sets of cells that use the points defining the face. This is an inherent assumption on the manifold relationship of the cells in the mesh.) In some cases, either because the mesh is non-manifold, because we wish to explicitly store information with the faces and edges of the mesh, or because performance requirements demand that boundaries are explicitly represented (the set intersection does not need to be performed); then Mesh can be further extended by adding explicit boundary assignments.

Usage
Mesh has three template parameters. The first is the pixel type, or the type of data stored (optionally) with points, cells, and/or boundaries. The second is the geometric dimension of the points defining the mesh. This also limits the maximum topological dimension of the cells that can be inserted. The third template parameter is the "MeshTraits" structure controlling type information for the mesh. Most users will be happy with the defaults, and will not have to worry about this third argument.

One of the most important parts of using this mesh is how to create cells to insert into it. The cells for the mesh take two template parameters. The first is the pixel type, and should correspond exactly to that type given to the mesh. The second is a "CellTraits" which holds a sub-set of the "MeshTraits" structure definitions, and is also a member of them. Any cell which is to be inserted to a mesh should have MeshTraits::CellTraits as its second template parameter.

Template parameters for Mesh:

TPixelType = The type stored as data for an entity (cell, point, or boundary).

TMeshTraits = Type information structure for the mesh.

References
No reference information is available.
Examples:
Examples/DataRepresentation/Mesh/AutomaticMesh.cxx, Examples/DataRepresentation/Mesh/Mesh1.cxx, Examples/DataRepresentation/Mesh/Mesh2.cxx, Examples/DataRepresentation/Mesh/Mesh3.cxx, Examples/DataRepresentation/Mesh/MeshCellsIteration.cxx, Examples/DataRepresentation/Mesh/MeshCellVisitor.cxx, Examples/DataRepresentation/Mesh/MeshCellVisitor2.cxx, Examples/DataRepresentation/Mesh/MeshKComplex.cxx, Examples/DataRepresentation/Mesh/MeshPolyLine.cxx, Examples/DataRepresentation/Mesh/MeshTraits.cxx, Examples/Filtering/SurfaceExtraction.cxx, Examples/SpatialObjects/MeshSpatialObject.cxx, SphinxExamples/src/Core/Common/ReadAPointSet/Code.cxx, SphinxExamples/src/Core/Mesh/ConvertTriangleMeshToBinaryImage/Code.cxx, SphinxExamples/src/Core/Mesh/ExtractIsoSurface/Code.cxx, SphinxExamples/src/Core/Mesh/TranslateOneMesh/Code.cxx, SphinxExamples/src/IO/Mesh/ReadMesh/Code.cxx, WikiExamples/Meshes/AddPointsAndEdges.cxx, WikiExamples/Meshes/AreaAndVolume.cxx, WikiExamples/Meshes/ConvertToVTK.cxx, WikiExamples/Meshes/PointAndCellData.cxx, WikiExamples/Meshes/ReadWrite.cxx, WikiExamples/Meshes/WishList/VTKPolyDataWriter.cxx, and WikiExamples/PointSet/ReadPointSet.cxx.

Definition at line 108 of file itkMesh.h.

Classes

class  BoundaryAssignmentIdentifier
 

Public Types

using BoundaryAssignmentsContainer = MapContainer< BoundaryAssignmentIdentifier, CellIdentifier >
 
using BoundaryAssignmentsContainerPointer = typename BoundaryAssignmentsContainer::Pointer
 
using BoundaryAssignmentsContainerVector = std::vector< BoundaryAssignmentsContainerPointer >
 
using BoundingBoxPointer = typename BoundingBoxType::Pointer
 
using BoundingBoxType = BoundingBox< PointIdentifier, Self::PointDimension, CoordRepType, PointsContainer >
 
using CellAutoPointer = typename CellType::CellAutoPointer
 
using CellDataContainer = typename MeshTraits::CellDataContainer
 
using CellDataContainerConstPointer = typename CellDataContainer::ConstPointer
 
using CellDataContainerIterator = typename CellDataContainer::ConstIterator
 
using CellDataContainerPointer = typename CellDataContainer::Pointer
 
using CellFeatureCount = CellFeatureIdentifier
 
using CellFeatureIdentifier = typename MeshTraits::CellFeatureIdentifier
 
using CellIdentifier = typename MeshTraits::CellIdentifier
 
using CellLinksContainer = typename MeshTraits::CellLinksContainer
 
using CellLinksContainerConstPointer = typename CellLinksContainer::ConstPointer
 
using CellLinksContainerIterator = typename CellLinksContainer::ConstIterator
 
using CellLinksContainerPointer = typename CellLinksContainer::Pointer
 
using CellMultiVisitorType = typename CellType::MultiVisitor
 
using CellPixelType = typename MeshTraits::CellPixelType
 
enum  CellsAllocationMethodType {
  CellsAllocationMethodUndefined,
  CellsAllocatedAsStaticArray,
  CellsAllocatedAsADynamicArray,
  CellsAllocatedDynamicallyCellByCell
}
 
using CellsContainer = typename MeshTraits::CellsContainer
 
using CellsContainerConstIterator = typename CellsContainer::ConstIterator
 
using CellsContainerConstPointer = typename CellsContainer::ConstPointer
 
using CellsContainerIterator = typename CellsContainer::Iterator
 
using CellsContainerPointer = typename CellsContainer::Pointer
 
using CellTraits = typename MeshTraits::CellTraits
 
using CellType = CellInterface< CellPixelType, CellTraits >
 
using ConstPointer = SmartPointer< const Self >
 
using CoordRepType = typename MeshTraits::CoordRepType
 
using InterpolationWeightType = typename MeshTraits::InterpolationWeightType
 
using MeshTraits = TMeshTraits
 
using PixelType = typename MeshTraits::PixelType
 
using PointCellLinksContainer = typename MeshTraits::PointCellLinksContainer
 
using PointCellLinksContainerIterator = typename PointCellLinksContainer::const_iterator
 
using PointDataContainer = typename MeshTraits::PointDataContainer
 
using PointDataContainerIterator = typename PointDataContainer::ConstIterator
 
using PointDataContainerPointer = typename PointDataContainer::Pointer
 
using Pointer = SmartPointer< Self >
 
using PointHashType = typename MeshTraits::PointHashType
 
using PointIdentifier = typename MeshTraits::PointIdentifier
 
using PointsContainer = typename MeshTraits::PointsContainer
 
using PointsContainerConstIterator = typename PointsContainer::ConstIterator
 
using PointsContainerIterator = typename PointsContainer::Iterator
 
using PointsContainerPointer = typename PointsContainer::Pointer
 
using PointType = typename MeshTraits::PointType
 
using RegionType = typename Superclass::RegionType
 
using Self = Mesh
 
using Superclass = PointSet< TPixelType, VDimension, TMeshTraits >
 
- Public Types inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
using ConstPointer = SmartPointer< const Self >
 
using CoordRepType = typename MeshTraits::CoordRepType
 
using MeshTraits = TMeshTraits
 
using PixelType = typename MeshTraits::PixelType
 
using PointDataContainer = typename MeshTraits::PointDataContainer
 
using PointDataContainerConstPointer = typename PointDataContainer::ConstPointer
 
using PointDataContainerIterator = typename PointDataContainer::ConstIterator
 
using PointDataContainerPointer = typename PointDataContainer::Pointer
 
using Pointer = SmartPointer< Self >
 
using PointIdentifier = typename MeshTraits::PointIdentifier
 
using PointsContainer = typename MeshTraits::PointsContainer
 
using PointsContainerConstIterator = typename PointsContainer::ConstIterator
 
using PointsContainerConstPointer = typename PointsContainer::ConstPointer
 
using PointsContainerIterator = typename PointsContainer::Iterator
 
using PointsContainerPointer = typename PointsContainer::Pointer
 
using PointType = typename MeshTraits::PointType
 
using RegionType = long
 
using Self = PointSet
 
using Superclass = DataObject
 
- Public Types inherited from itk::DataObject
using ConstPointer = SmartPointer< const Self >
 
using DataObjectIdentifierType = std::string
 
using DataObjectPointerArraySizeType = std::vector< Pointer >::size_type
 
using Pointer = SmartPointer< Self >
 
using Self = DataObject
 
using Superclass = Object
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = Object
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

virtual void Accept (CellMultiVisitorType *mv) const
 
void BuildCellLinks () const
 
void CopyInformation (const DataObject *data) override
 
virtual ::itk::LightObject::Pointer CreateAnother () const
 
bool GetAssignedCellBoundaryIfOneExists (int dimension, CellIdentifier, CellFeatureIdentifier, CellAutoPointer &) const
 
bool GetBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellIdentifier *boundaryId) const
 
BoundaryAssignmentsContainerPointer GetBoundaryAssignments (int dimension)
 
const
BoundaryAssignmentsContainerPointer 
GetBoundaryAssignments (int dimension) const
 
const BoundingBoxTypeGetBoundingBox () const
 
bool GetCell (CellIdentifier, CellAutoPointer &) const
 
bool GetCellBoundaryFeature (int dimension, CellIdentifier, CellFeatureIdentifier, CellAutoPointer &) const
 
CellIdentifier GetCellBoundaryFeatureNeighbors (int dimension, CellIdentifier, CellFeatureIdentifier, std::set< CellIdentifier > *cellSet)
 
CellDataContainerGetCellData ()
 
const CellDataContainerGetCellData () const
 
CellLinksContainerGetCellLinks ()
 
const CellLinksContainerGetCellLinks () const
 
CellIdentifier GetCellNeighbors (CellIdentifier cellId, std::set< CellIdentifier > *cellSet)
 
CellsContainerGetCells ()
 
const CellsContainerGetCells () const
 
virtual const char * GetNameOfClass () const
 
CellFeatureCount GetNumberOfCellBoundaryFeatures (int dimension, CellIdentifier) const
 
CellIdentifier GetNumberOfCells () const
 
void Graft (const DataObject *data) override
 
void Initialize () override
 
void PassStructure (Self *inputMesh)
 
bool RemoveBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId)
 
void SetBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellIdentifier boundaryId)
 
void SetBoundaryAssignments (int dimension, BoundaryAssignmentsContainer *)
 
void SetCell (CellIdentifier, CellAutoPointer &)
 
void SetCellData (CellDataContainer *)
 
void SetCellLinks (CellLinksContainer *)
 
void SetCells (CellsContainer *)
 
void SetCellData (CellIdentifier, CellPixelType)
 
bool GetCellData (CellIdentifier, CellPixelType *) const
 
virtual void SetCellsAllocationMethod (CellsAllocationMethodType _arg)
 
virtual const
CellsAllocationMethodType
GetCellsAllocationMethod () const
 
- Public Member Functions inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
virtual RegionType GetBufferedRegion () const
 
virtual RegionType GetMaximumNumberOfRegions () const
 
PointIdentifier GetNumberOfPoints () const
 
PointDataContainerGetPointData ()
 
const PointDataContainerGetPointData () const
 
PointsContainerGetPoints ()
 
const PointsContainerGetPoints () const
 
virtual RegionType GetRequestedRegion () const
 
void PassStructure (Self *inputPointSet)
 
bool RequestedRegionIsOutsideOfTheBufferedRegion () override
 
virtual void SetBufferedRegion (const RegionType &region)
 
void SetPointData (PointDataContainer *)
 
void SetPoints (PointsContainer *)
 
void SetRequestedRegion (const DataObject *data) override
 
virtual void SetRequestedRegion (const RegionType &region)
 
void SetRequestedRegionToLargestPossibleRegion () override
 
void UpdateOutputInformation () override
 
bool VerifyRequestedRegion () override
 
void SetPoint (PointIdentifier, PointType)
 
bool GetPoint (PointIdentifier, PointType *) const
 
PointType GetPoint (PointIdentifier) const
 
void SetPointData (PointIdentifier, PixelType)
 
bool GetPointData (PointIdentifier, PixelType *) const
 
- Public Member Functions inherited from itk::DataObject
virtual void DataHasBeenGenerated ()
 
void DisconnectPipeline ()
 
bool GetDataReleased () const
 
virtual const bool & GetReleaseDataFlag () const
 
SmartPointer< ProcessObjectGetSource () const
 
DataObjectPointerArraySizeType GetSourceOutputIndex () const
 
const DataObjectIdentifierTypeGetSourceOutputName () const
 
virtual ModifiedTimeType GetUpdateMTime () const
 
virtual void PrepareForNewData ()
 
virtual void PropagateRequestedRegion ()
 
void ReleaseData ()
 
virtual void ReleaseDataFlagOff ()
 
virtual void ReleaseDataFlagOn ()
 
virtual void ResetPipeline ()
 
void SetReleaseDataFlag (bool flag)
 
bool ShouldIReleaseData () const
 
virtual void Update ()
 
virtual void UpdateOutputData ()
 
void SetPipelineMTime (ModifiedTimeType time)
 
virtual const ModifiedTimeTypeGetPipelineMTime () const
 
virtual void SetRealTimeStamp (RealTimeStamp _arg)
 
virtual const RealTimeStampGetRealTimeStamp () const
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType GetMTime () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexceptoverride
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::DataObject
static bool GetGlobalReleaseDataFlag ()
 
static void GlobalReleaseDataFlagOff ()
 
static void GlobalReleaseDataFlagOn ()
 
static void SetGlobalReleaseDataFlag (bool val)
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int MaxTopologicalDimension = TMeshTraits::MaxTopologicalDimension
 
static constexpr unsigned int PointDimension = TMeshTraits::PointDimension
 
- Static Public Attributes inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
static constexpr unsigned int PointDimension = TMeshTraits::PointDimension
 

Protected Member Functions

void ReleaseCellsMemory ()
 
 Mesh ()
 
 ~Mesh () override
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
- Protected Member Functions inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
 PointSet ()
 
 ~PointSet () override=default
 
- Protected Member Functions inherited from itk::DataObject
 DataObject ()
 
virtual void PropagateResetPipeline ()
 
 ~DataObject () override
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
 ~Object () override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

BoundaryAssignmentsContainerVector m_BoundaryAssignmentsContainers
 
BoundingBoxPointer m_BoundingBox
 
CellDataContainerPointer m_CellDataContainer
 
CellLinksContainerPointer m_CellLinksContainer
 
CellsContainerPointer m_CellsContainer
 
- Protected Attributes inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits >
RegionType m_BufferedRegion
 
RegionType m_MaximumNumberOfRegions
 
RegionType m_NumberOfRegions
 
PointDataContainerPointer m_PointDataContainer
 
PointsContainerPointer m_PointsContainer
 
RegionType m_RequestedNumberOfRegions
 
RegionType m_RequestedRegion
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Private Attributes

CellsAllocationMethodType m_CellsAllocationMethod
 

Member Typedef Documentation

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::BoundaryAssignmentsContainer = MapContainer< BoundaryAssignmentIdentifier, CellIdentifier >

Used for manipulating boundaries and boundary attributes. A BoundaryAssignmentsContainerVector is indexed by dimension. For each dimension, it points to a MapContainer indexed by a BoundaryAssignmentIdentifier, which encapsulates a cell identifier and a boundary feature identifier. The boundary feature identifier distinguishes different boundary features for a given cell at a given dimension.

Definition at line 248 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::BoundaryAssignmentsContainerPointer = typename BoundaryAssignmentsContainer::Pointer

Definition at line 249 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::BoundaryAssignmentsContainerVector = std::vector<BoundaryAssignmentsContainerPointer>

Definition at line 250 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::BoundingBoxPointer = typename BoundingBoxType::Pointer

Definition at line 171 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::BoundingBoxType = BoundingBox< PointIdentifier, Self::PointDimension, CoordRepType, PointsContainer >

Used to support geometric operations on the toolkit.

Definition at line 161 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellAutoPointer = typename CellType::CellAutoPointer

Definition at line 189 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellDataContainer = typename MeshTraits::CellDataContainer

Definition at line 157 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellDataContainerConstPointer = typename CellDataContainer::ConstPointer

Definition at line 170 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellDataContainerIterator = typename CellDataContainer::ConstIterator

Definition at line 181 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellDataContainerPointer = typename CellDataContainer::Pointer

Definition at line 169 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellFeatureCount = CellFeatureIdentifier

A useful rename.

Definition at line 185 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellFeatureIdentifier = typename MeshTraits::CellFeatureIdentifier

Definition at line 148 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellIdentifier = typename MeshTraits::CellIdentifier

Definition at line 147 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellLinksContainer = typename MeshTraits::CellLinksContainer

Definition at line 155 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellLinksContainerConstPointer = typename CellLinksContainer::ConstPointer

Definition at line 172 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellLinksContainerIterator = typename CellLinksContainer::ConstIterator

Definition at line 179 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellLinksContainerPointer = typename CellLinksContainer::Pointer

Definition at line 167 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellMultiVisitorType = typename CellType::MultiVisitor

Visiting cells.

Definition at line 192 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellPixelType = typename MeshTraits::CellPixelType

Definition at line 130 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellsContainer = typename MeshTraits::CellsContainer

Definition at line 153 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellsContainerConstIterator = typename CellsContainer::ConstIterator

Definition at line 177 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellsContainerConstPointer = typename CellsContainer::ConstPointer

Definition at line 166 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellsContainerIterator = typename CellsContainer::Iterator

Definition at line 178 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellsContainerPointer = typename CellsContainer::Pointer

Definition at line 165 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellTraits = typename MeshTraits::CellTraits

Definition at line 152 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CellType = CellInterface< CellPixelType, CellTraits >

The base cell type for cells in this mesh.

Definition at line 188 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::ConstPointer = SmartPointer< const Self >

Definition at line 117 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::CoordRepType = typename MeshTraits::CoordRepType

Convenient type alias obtained from TMeshTraits template parameter.

Definition at line 144 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::InterpolationWeightType = typename MeshTraits::InterpolationWeightType

Definition at line 145 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::MeshTraits = TMeshTraits

Hold on to the type information specified by the template parameters.

Definition at line 128 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PixelType = typename MeshTraits::PixelType

Definition at line 129 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointCellLinksContainer = typename MeshTraits::PointCellLinksContainer

Definition at line 154 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointCellLinksContainerIterator = typename PointCellLinksContainer::const_iterator

Definition at line 182 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointDataContainer = typename MeshTraits::PointDataContainer

Definition at line 156 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointDataContainerIterator = typename PointDataContainer::ConstIterator

Definition at line 180 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointDataContainerPointer = typename PointDataContainer::Pointer

Definition at line 168 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::Pointer = SmartPointer< Self >

Definition at line 116 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointHashType = typename MeshTraits::PointHashType

Definition at line 149 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointIdentifier = typename MeshTraits::PointIdentifier

Definition at line 146 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointsContainer = typename MeshTraits::PointsContainer

Definition at line 151 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointsContainerConstIterator = typename PointsContainer::ConstIterator

Create types that are iterators for each of the container types.

Definition at line 175 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointsContainerIterator = typename PointsContainer::Iterator

Definition at line 176 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointsContainerPointer = typename PointsContainer::Pointer

Create types that are pointers to each of the container types.

Definition at line 164 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointType = typename MeshTraits::PointType

Definition at line 150 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::RegionType = typename Superclass::RegionType

Definition at line 119 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::Self = Mesh

Standard type alias.

Definition at line 114 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
using itk::Mesh< TPixelType, VDimension, TMeshTraits >::Superclass = PointSet< TPixelType, VDimension, TMeshTraits >

Definition at line 115 of file itkMesh.h.

Member Enumeration Documentation

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
enum itk::Mesh::CellsAllocationMethodType

Enum defining the possible methods used to allocate memory for the Cells

Enumerator
CellsAllocationMethodUndefined 
CellsAllocatedAsStaticArray 
CellsAllocatedAsADynamicArray 
CellsAllocatedDynamicallyCellByCell 

Definition at line 138 of file itkMesh.h.

Constructor & Destructor Documentation

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
itk::Mesh< TPixelType, VDimension, TMeshTraits >::Mesh ( )
protected

Constructor for use by New() method.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
itk::Mesh< TPixelType, VDimension, TMeshTraits >::~Mesh ( )
overrideprotected

Constructor for use by New() method.

Member Function Documentation

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
virtual void itk::Mesh< TPixelType, VDimension, TMeshTraits >::Accept ( CellMultiVisitorType mv) const
virtual

This method iterates over all the cells in the mesh and has each cell Accept the MultiVisitor. See MultiVisitor for more information. (Note, this follows the Visitor Design Pattern.)

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::BuildCellLinks ( ) const

Dynamically build the links from points back to their using cells. This information is stored in the cell links container, not in the points.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::CopyInformation ( const DataObject data)
overridevirtual

Methods for managing Mesh filters that have internal mini-pipelines

Reimplemented from itk::PointSet< TPixelType, VDimension, TMeshTraits >.

Reimplemented in itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
virtual::itk::LightObject::Pointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::CreateAnother ( ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::PointSet< TPixelType, VDimension, TMeshTraits >.

Reimplemented in itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetAssignedCellBoundaryIfOneExists ( int  dimension,
CellIdentifier  ,
CellFeatureIdentifier  ,
CellAutoPointer  
) const

Check if there is an explicitly assigned boundary feature for the given dimension and cell- and cell-feature-identifiers. If there is, a pointer to it is given back through boundary (if boundary != nullptr) and true is returned. Otherwise, false is returned.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetBoundaryAssignment ( int  dimension,
CellIdentifier  cellId,
CellFeatureIdentifier  featureId,
CellIdentifier boundaryId 
) const

For the given cellId, get the identifier of a particular boundary feature of the given dimension. The featureId determines which boundary feature of the specified dimension is returned. For instance, if dimension is 1 and featureId is 0, then GetBoundaryAssignment finds the 0th edge of the given cell. The return value indicates whether a feature of the appropriate dimension and featureId exists. If it does not, the BoundaryIdentifier pointer is left unchanged.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
BoundaryAssignmentsContainerPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetBoundaryAssignments ( int  dimension)
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
const BoundaryAssignmentsContainerPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetBoundaryAssignments ( int  dimension) const
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
const BoundingBoxType* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetBoundingBox ( ) const

Get the bounding box of the mesh. The methods return a pointer to the user-supplied bounding box as a convenience.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCell ( CellIdentifier  ,
CellAutoPointer  
) const
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellBoundaryFeature ( int  dimension,
CellIdentifier  ,
CellFeatureIdentifier  ,
CellAutoPointer  
) const

Get the boundary feature of the given dimension of the given cell corresponding to the given feature identifier.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellIdentifier itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellBoundaryFeatureNeighbors ( int  dimension,
CellIdentifier  ,
CellFeatureIdentifier  ,
std::set< CellIdentifier > *  cellSet 
)

Get the set of cells neighboring the given cell across the given boundary feature. Returns the number of neighbors found. If cellSet is not nullptr, the set of cell pointers is filled in with identifiers of the neighboring cells.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellDataContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellData ( )
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
const CellDataContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellData ( ) const
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellData ( CellIdentifier  ,
CellPixelType  
) const

Access routines to fill the CellData container, and get information from it.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellLinksContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellLinks ( )
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
const CellLinksContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellLinks ( ) const
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellIdentifier itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellNeighbors ( CellIdentifier  cellId,
std::set< CellIdentifier > *  cellSet 
)

Get the set of cells having the given cell as part of their boundary. Returns the number of neighbors found. If cellSet is not nullptr, the set of cell pointers is filled in with identifiers of the neighboring cells.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellsContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCells ( )
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
const CellsContainer* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCells ( ) const
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
virtual const CellsAllocationMethodType& itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetCellsAllocationMethod ( ) const
virtual

Set/Get the identification of the method used to allocate cells

Warning
Failure to call this method correctly will lead to memory leaks and/or segmentation faults because the cell memory will not be erased or will be erased with an improper method.
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
virtual const char* itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetNameOfClass ( ) const
virtual
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellFeatureCount itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetNumberOfCellBoundaryFeatures ( int  dimension,
CellIdentifier   
) const

Interface to cells.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellIdentifier itk::Mesh< TPixelType, VDimension, TMeshTraits >::GetNumberOfCells ( ) const

Mesh-level operation interface.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::Graft ( const DataObject )
overridevirtual

Method for grafting the content of one data object into another one. This method is intended to be overloaded by derived classes. Each one of them should use dynamic_casting in order to verify that the grafted object is actually of the same type as the class on which the Graft() method was invoked.

Reimplemented from itk::PointSet< TPixelType, VDimension, TMeshTraits >.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::Initialize ( )
overridevirtual

Restore the data object to its initial state. This means releasing memory.

Reimplemented from itk::PointSet< TPixelType, VDimension, TMeshTraits >.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
static Pointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::New ( )
static

Method for creation through the object factory.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::PassStructure ( Self inputMesh)
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::ReleaseCellsMemory ( )
protected

Release the memory allocated for the cells pointers. This is done based on information provided by the user through the method SetCellsAllocationMethod()

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
bool itk::Mesh< TPixelType, VDimension, TMeshTraits >::RemoveBoundaryAssignment ( int  dimension,
CellIdentifier  cellId,
CellFeatureIdentifier  featureId 
)
template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetBoundaryAssignment ( int  dimension,
CellIdentifier  cellId,
CellFeatureIdentifier  featureId,
CellIdentifier  boundaryId 
)

Explicitly assign boundaryId as a part of the boundary of cellId. The identifiers boundaryId and cellId must identify cell objects already in the mesh. The dimension of boundaryId must be specified by dimension, and a unique CellFeatureIdentifier featureId must be assigned for each distinct boundary feature of a given dimension. CellFeatureIdentifier is equivalent to IdentifierType by default, and this type alias will not typically need to be changed. The UsingCells list of boundaryId is automatically updated to include cellId.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetBoundaryAssignments ( int  dimension,
BoundaryAssignmentsContainer  
)

Set/get the BoundaryAssignmentsContainer for a given dimension. The BoundaryAssignmentsContainer is a MapContainer indexed by a BoundaryAssignmentIdentifier, which encapsulates a cell identifier and a boundary feature identifier. The boundary feature identifier distinguishes different boundary features for a given cell at a given dimension.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCell ( CellIdentifier  ,
CellAutoPointer  
)

Access routines to fill the Cells container (m_CellsContainer), and get information from it. If SetCell is used to overwrite a cell currently in the mesh, it is the caller's responsibility to release the memory for the cell currently at the CellIdentifier position prior to calling SetCell.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCellData ( CellDataContainer )

Access m_CellDataContainer, which contains data associated with the mesh's cells. Optionally, this can be nullptr, indicating that no data are associated with the cells. The data for a cell can be accessed through its cell identifier.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCellData ( CellIdentifier  ,
CellPixelType   
)

Access routines to fill the CellData container, and get information from it.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCellLinks ( CellLinksContainer )

Access m_CellsLinksContainer, which contains parent cell links for each point. Since a point can be used by multiple cells, each point identifier accesses another container which holds the cell identifiers

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCells ( CellsContainer )

Access m_CellsContainer, which holds cells used by the mesh. Individual cells are accessed through cell identifiers.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
virtual void itk::Mesh< TPixelType, VDimension, TMeshTraits >::SetCellsAllocationMethod ( CellsAllocationMethodType  _arg)
virtual

Set/Get the identification of the method used to allocate cells

Warning
Failure to call this method correctly will lead to memory leaks and/or segmentation faults because the cell memory will not be erased or will be erased with an improper method.

Member Data Documentation

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
BoundaryAssignmentsContainerVector itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_BoundaryAssignmentsContainers
protected

A vector of objects containing explicit cell boundary assignments. The vector is indexed by the topological dimension of the cell boundary. The container for each topological dimension holds boundary identifiers of the assigned boundaries. The containers are keyed by BoundaryAssignmentIdentifier objects (see above). The boundary identifiers can be used to access the boundaries themselves in the containers stored in the Boundaries vector. They can also be used to access the data stored by a particular boundary through the containers in the BoundaryData vector.

Definition at line 278 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
BoundingBoxPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_BoundingBox
protected

The bounding box (xmin,xmax, ymin,ymax, ...) of the mesh. The bounding box is used for searching, picking, display, etc.

Definition at line 455 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellDataContainerPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_CellDataContainer
protected

An object containing data associated with the mesh's cells. Optionally, this can be nullptr, indicating that no data are associated with the cells. The data for a cell can be accessed through its cell identifier.

Definition at line 262 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellLinksContainerPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_CellLinksContainer
mutableprotected

An object containing parent cell links for each point. Since a point can be used by multiple cells, each point identifier accesses another container which holds the cell identifiers

Definition at line 267 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellsAllocationMethodType itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_CellsAllocationMethod
private

Definition at line 458 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
CellsContainerPointer itk::Mesh< TPixelType, VDimension, TMeshTraits >::m_CellsContainer
protected

Holds cells used by the mesh. Individual cells are accessed through cell identifiers.

Definition at line 256 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
constexpr unsigned int itk::Mesh< TPixelType, VDimension, TMeshTraits >::MaxTopologicalDimension = TMeshTraits::MaxTopologicalDimension
static

Definition at line 134 of file itkMesh.h.

template<typename TPixelType, unsigned int VDimension = 3, typename TMeshTraits = DefaultStaticMeshTraits< TPixelType, VDimension, VDimension >>
constexpr unsigned int itk::Mesh< TPixelType, VDimension, TMeshTraits >::PointDimension = TMeshTraits::PointDimension
static

Convenient constants obtained from TMeshTraits template parameter.

Definition at line 133 of file itkMesh.h.


The documentation for this class was generated from the following file: