ITK
4.9.0
Insight Segmentation and Registration Toolkit
|
#include <itkSimplexMesh.h>
The class represents a 2-simplex mesh.
A simplex mesh can be used for deformable model segmentation of 3D image data. To create a simplex mesh one needs a triangle mesh, which can be converted to using the class itkTriangleMeshToSimplexMeshFilter. The back filtering (from simplex to trinagle mesh)is done through a itkSimplexMeshToTriangleMeshFilter.
Definition at line 47 of file itkSimplexMesh.h.
Public Types | |
typedef CellType::CellAutoPointer | CellAutoPointer |
typedef Superclass::CellIdentifier | CellIdentifier |
typedef Superclass::CellsContainerConstIterator | CellsContainerConstIterator |
typedef Superclass::CellsContainerConstPointer | CellsContainerConstPointer |
typedef Superclass::CellsContainerIterator | CellsContainerIterator |
typedef Superclass::CellsContainerPointer | CellsContainerPointer |
typedef Superclass::CellType | CellType |
typedef SmartPointer< const Self > | ConstPointer |
typedef CovariantVector < typename VectorType::ValueType, 3 > | CovariantVectorType |
typedef GeometryMapType::ConstIterator | GeometryMapConstIterator |
typedef GeometryMapType::Iterator | GeometryMapIterator |
typedef GeometryMapType::Pointer | GeometryMapPointer |
typedef itk::MapContainer < SizeValueType, SimplexMeshGeometry * > | GeometryMapType |
typedef SimplexMeshGeometry::IndexArray | IndexArray |
typedef itk::LineCell< CellType > | LineType |
typedef TMeshTraits | MeshTraits |
typedef std::vector < SizeValueType > | NeighborListType |
typedef NeighborSetType::iterator | NeighborSetIterator |
typedef std::set< SizeValueType > | NeighborSetType |
typedef MeshTraits::PixelType | PixelType |
typedef SmartPointer< Self > | Pointer |
typedef TMeshTraits::PointIdentifier | PointIdentifier |
typedef MeshTraits::PointsContainer | PointsContainer |
typedef Superclass::PointsContainerConstIterator | PointsContainerConstIterator |
typedef Superclass::PointsContainer::Iterator | PointsContainerIterator |
typedef Superclass::PointsContainerPointer | PointsContainerPointer |
typedef TMeshTraits::PointType | PointType |
typedef SimplexMesh | Self |
typedef Mesh< TPixelType, VDimension, TMeshTraits > | Superclass |
typedef PointType::VectorType | VectorType |
Public Types inherited from itk::Mesh< TPixelType, VDimension, TMeshTraits > | |
typedef MapContainer < BoundaryAssignmentIdentifier, CellIdentifier > | BoundaryAssignmentsContainer |
typedef BoundaryAssignmentsContainer::Pointer | BoundaryAssignmentsContainerPointer |
typedef std::vector < BoundaryAssignmentsContainerPointer > | BoundaryAssignmentsContainerVector |
typedef BoundingBoxType::Pointer | BoundingBoxPointer |
typedef BoundingBox < PointIdentifier, itkGetStaticConstMacro(PointDimension), CoordRepType, PointsContainer > | BoundingBoxType |
typedef CellType::CellAutoPointer | CellAutoPointer |
typedef MeshTraits::CellDataContainer | CellDataContainer |
typedef CellDataContainer::ConstPointer | CellDataContainerConstPointer |
typedef CellDataContainer::ConstIterator | CellDataContainerIterator |
typedef CellDataContainer::Pointer | CellDataContainerPointer |
typedef CellFeatureIdentifier | CellFeatureCount |
typedef MeshTraits::CellFeatureIdentifier | CellFeatureIdentifier |
typedef MeshTraits::CellIdentifier | CellIdentifier |
typedef MeshTraits::CellLinksContainer | CellLinksContainer |
typedef CellLinksContainer::ConstPointer | CellLinksContainerConstPointer |
typedef CellLinksContainer::ConstIterator | CellLinksContainerIterator |
typedef CellLinksContainer::Pointer | CellLinksContainerPointer |
typedef CellType::MultiVisitor | CellMultiVisitorType |
typedef MeshTraits::CellPixelType | CellPixelType |
enum | CellsAllocationMethodType { CellsAllocationMethodUndefined, CellsAllocatedAsStaticArray, CellsAllocatedAsADynamicArray, CellsAllocatedDynamicallyCellByCell } |
typedef MeshTraits::CellsContainer | CellsContainer |
typedef CellsContainer::ConstIterator | CellsContainerConstIterator |
typedef CellsContainer::ConstPointer | CellsContainerConstPointer |
typedef CellsContainer::Iterator | CellsContainerIterator |
typedef CellsContainer::Pointer | CellsContainerPointer |
typedef MeshTraits::CellTraits | CellTraits |
typedef CellInterface < CellPixelType, CellTraits > | CellType |
typedef SmartPointer< const Self > | ConstPointer |
typedef MeshTraits::CoordRepType | CoordRepType |
typedef MeshTraits::InterpolationWeightType | InterpolationWeightType |
typedef TMeshTraits | MeshTraits |
typedef MeshTraits::PixelType | PixelType |
typedef MeshTraits::PointCellLinksContainer | PointCellLinksContainer |
typedef PointCellLinksContainer::const_iterator | PointCellLinksContainerIterator |
typedef MeshTraits::PointDataContainer | PointDataContainer |
typedef PointDataContainer::ConstIterator | PointDataContainerIterator |
typedef PointDataContainer::Pointer | PointDataContainerPointer |
typedef SmartPointer< Self > | Pointer |
typedef MeshTraits::PointHashType | PointHashType |
typedef MeshTraits::PointIdentifier | PointIdentifier |
typedef MeshTraits::PointsContainer | PointsContainer |
typedef PointsContainer::ConstIterator | PointsContainerConstIterator |
typedef PointsContainer::Iterator | PointsContainerIterator |
typedef PointsContainer::Pointer | PointsContainerPointer |
typedef MeshTraits::PointType | PointType |
typedef Superclass::RegionType | RegionType |
typedef Mesh | Self |
typedef PointSet< TPixelType, VDimension, TMeshTraits > | Superclass |
Public Types inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef MeshTraits::CoordRepType | CoordRepType |
typedef TMeshTraits | MeshTraits |
typedef MeshTraits::PixelType | PixelType |
typedef MeshTraits::PointDataContainer | PointDataContainer |
typedef PointDataContainer::ConstPointer | PointDataContainerConstPointer |
typedef PointDataContainer::ConstIterator | PointDataContainerIterator |
typedef PointDataContainer::Pointer | PointDataContainerPointer |
typedef SmartPointer< Self > | Pointer |
typedef MeshTraits::PointIdentifier | PointIdentifier |
typedef MeshTraits::PointsContainer | PointsContainer |
typedef PointsContainer::ConstIterator | PointsContainerConstIterator |
typedef PointsContainer::ConstPointer | PointsContainerConstPointer |
typedef PointsContainer::Iterator | PointsContainerIterator |
typedef PointsContainer::Pointer | PointsContainerPointer |
typedef MeshTraits::PointType | PointType |
typedef long | RegionType |
typedef PointSet | Self |
typedef DataObject | Superclass |
Public Types inherited from itk::DataObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef std::string | DataObjectIdentifierType |
typedef std::vector< Pointer > ::size_type | DataObjectPointerArraySizeType |
typedef SmartPointer< Self > | Pointer |
typedef DataObject | Self |
typedef Object | Superclass |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Mesh< TPixelType, VDimension, TMeshTraits > | |
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 () |
Protected Member Functions | |
SimplexMesh () | |
virtual | ~SimplexMesh () |
void | PrintSelf (std::ostream &os, Indent indent) const override |
Protected Member Functions inherited from itk::Mesh< TPixelType, VDimension, TMeshTraits > | |
void | ReleaseCellsMemory () |
Mesh () | |
~Mesh () | |
Protected Member Functions inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits > | |
PointSet () | |
~PointSet () | |
Protected Member Functions inherited from itk::DataObject | |
DataObject () | |
virtual void | PropagateResetPipeline () |
~DataObject () | |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &time) |
virtual | ~Object () |
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 | |
GeometryMapPointer | m_GeometryData |
CellIdentifier | m_LastCellId |
Protected Attributes inherited from itk::Mesh< TPixelType, VDimension, TMeshTraits > | |
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 | |
AtomicInt< int > | m_ReferenceCount |
Private Member Functions | |
SimplexMesh (const Self &) ITK_DELETE_FUNCTION | |
Additional Inherited Members | |
Static Public Attributes inherited from itk::Mesh< TPixelType, VDimension, TMeshTraits > | |
static const unsigned int | PointDimension = TMeshTraits::PointDimension |
static const unsigned int | MaxTopologicalDimension = TMeshTraits::MaxTopologicalDimension |
Static Public Attributes inherited from itk::PointSet< TPixelType, VDimension, TMeshTraits > | |
static const unsigned int | PointDimension = TMeshTraits::PointDimension |
typedef CellType::CellAutoPointer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellAutoPointer |
Definition at line 90 of file itkSimplexMesh.h.
typedef Superclass::CellIdentifier itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellIdentifier |
Definition at line 123 of file itkSimplexMesh.h.
typedef Superclass::CellsContainerConstIterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellsContainerConstIterator |
Definition at line 122 of file itkSimplexMesh.h.
typedef Superclass::CellsContainerConstPointer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellsContainerConstPointer |
Definition at line 120 of file itkSimplexMesh.h.
typedef Superclass::CellsContainerIterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellsContainerIterator |
Definition at line 121 of file itkSimplexMesh.h.
typedef Superclass::CellsContainerPointer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellsContainerPointer |
Definition at line 119 of file itkSimplexMesh.h.
typedef Superclass::CellType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CellType |
Definition at line 87 of file itkSimplexMesh.h.
typedef SmartPointer< const Self > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::ConstPointer |
Standard typedefs.
Definition at line 60 of file itkSimplexMesh.h.
typedef CovariantVector< typename VectorType::ValueType, 3 > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::CovariantVectorType |
Definition at line 84 of file itkSimplexMesh.h.
typedef GeometryMapType::ConstIterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GeometryMapConstIterator |
Definition at line 104 of file itkSimplexMesh.h.
typedef GeometryMapType::Iterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GeometryMapIterator |
iterator definition for iterating over a geometry map
Definition at line 103 of file itkSimplexMesh.h.
typedef GeometryMapType::Pointer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GeometryMapPointer |
smartpointer def for the geometry map
Definition at line 100 of file itkSimplexMesh.h.
typedef itk::MapContainer< SizeValueType, SimplexMeshGeometry * > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GeometryMapType |
map containing a SimplexMeshGeometry data object for each mesh point
Definition at line 97 of file itkSimplexMesh.h.
typedef SimplexMeshGeometry::IndexArray itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::IndexArray |
definition for array of indices.
Definition at line 63 of file itkSimplexMesh.h.
typedef itk::LineCell< CellType > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::LineType |
Definition at line 93 of file itkSimplexMesh.h.
typedef TMeshTraits itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::MeshTraits |
Hold on to the type information specified by the template parameters.
Definition at line 110 of file itkSimplexMesh.h.
typedef std::vector< SizeValueType > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::NeighborListType |
Definition at line 72 of file itkSimplexMesh.h.
typedef NeighborSetType::iterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::NeighborSetIterator |
Definition at line 69 of file itkSimplexMesh.h.
typedef std::set< SizeValueType > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::NeighborSetType |
definition for a set of neighbor indices
Definition at line 66 of file itkSimplexMesh.h.
typedef MeshTraits::PixelType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PixelType |
Definition at line 114 of file itkSimplexMesh.h.
typedef SmartPointer< Self > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::Pointer |
Standard typedefs.
Definition at line 57 of file itkSimplexMesh.h.
typedef TMeshTraits::PointIdentifier itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointIdentifier |
Definition at line 78 of file itkSimplexMesh.h.
typedef MeshTraits::PointsContainer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointsContainer |
Definition at line 115 of file itkSimplexMesh.h.
typedef Superclass::PointsContainerConstIterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointsContainerConstIterator |
Definition at line 118 of file itkSimplexMesh.h.
typedef Superclass::PointsContainer::Iterator itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointsContainerIterator |
Definition at line 117 of file itkSimplexMesh.h.
typedef Superclass::PointsContainerPointer itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointsContainerPointer |
Definition at line 116 of file itkSimplexMesh.h.
typedef TMeshTraits::PointType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::PointType |
Definition at line 75 of file itkSimplexMesh.h.
typedef SimplexMesh itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::Self |
Standard typedefs.
Definition at line 51 of file itkSimplexMesh.h.
typedef Mesh< TPixelType, VDimension, TMeshTraits > itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::Superclass |
Standard typedefs.
Definition at line 54 of file itkSimplexMesh.h.
typedef PointType::VectorType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::VectorType |
Definition at line 81 of file itkSimplexMesh.h.
|
protected |
Constructor for use by New() method.
|
protectedvirtual |
Constructor for use by New() method.
|
private |
CellIdentifier itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::AddEdge | ( | PointIdentifier | startPointId, |
PointIdentifier | endPointId | ||
) |
Add a new edge to the simplex mesh by specifying the ids of the start and end point of the edge Note: This can destroy the simplex mesh structure! Better use the simplex mesh modification or creation filters
CellIdentifier itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::AddFace | ( | CellAutoPointer & | cellPointer | ) |
Add a new simplex mesh cell to the mesh by passing an AutoPointer of a previously created simplex mesh cell
Note: This can destroy the simplex mesh structure! You should use the simplex mesh modification or creation filters.
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::AddNeighbor | ( | PointIdentifier | pointId, |
PointIdentifier | neighborId | ||
) |
Add a neighbor to a point. Note: This can destroy the simplex mesh topology! Better use te simplex mesh creation filters.
CovariantVectorType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::ComputeNormal | ( | PointIdentifier | idx | ) | const |
compute the normal vector in the specified mesh point
|
overridevirtual |
copy all necessary information from passed object to the mesh
Reimplemented from itk::Mesh< TPixelType, VDimension, TMeshTraits >.
|
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::Mesh< TPixelType, VDimension, TMeshTraits >.
PointType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetBarycentricCoordinates | ( | PointIdentifier | idx | ) | const |
Set the barycentric coordinates for a specified point
double itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetDistance | ( | PointIdentifier | idx | ) | const |
Get the distance to the foot point for the specified point
|
virtual |
returns the current map of geometrydata
|
virtual |
Set the id value valid for new cells
double itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetMeanCurvature | ( | PointIdentifier | idx | ) | const |
Get the mean curvature for the specified point
|
virtual |
Standard part of every itk Object.
Reimplemented from itk::Mesh< TPixelType, VDimension, TMeshTraits >.
IndexArray itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetNeighbors | ( | PointIdentifier | pointId | ) | const |
Get the three direct neighbors of a point
NeighborListType* itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetNeighbors | ( | PointIdentifier | pointId, |
unsigned int | radius, | ||
NeighborListType * | list = nullptr |
||
) | const |
Get all neighbor points with a specified radius
double itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetPhi | ( | PointIdentifier | idx | ) | const |
Get the simplex angle for the specified point
double itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetRadius | ( | PointIdentifier | idx | ) | const |
Get the circum circles radius for the specified point
PointType itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::GetReferenceMetrics | ( | PointIdentifier | idx | ) | const |
Return the reference metrics for the specified point
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Constructor for use by New() method.
Reimplemented from itk::Mesh< TPixelType, VDimension, TMeshTraits >.
CellIdentifier itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::ReplaceFace | ( | CellIdentifier | replaceIndex, |
CellAutoPointer & | cellPointer | ||
) |
Replaces the cell specified by replaceIndex with the new cell passed by its AutoPointer
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::ReplaceNeighbor | ( | PointIdentifier | pointId, |
PointIdentifier | oldNeighborId, | ||
PointIdentifier | newNeighborIdx | ||
) |
Replace a neighbor of a specific point by a new one
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetBarycentricCoordinates | ( | PointIdentifier | idx, |
PointType | values | ||
) |
Set the geometry data for a specified point
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetDistance | ( | PointIdentifier | idx, |
double | values | ||
) |
Set the distance to the foot point for the specified point
|
virtual |
set the map of geometrydata to the new pointer
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetGeometryData | ( | PointIdentifier | pointId, |
SimplexMeshGeometry * | |||
) |
Set the geometry data for a specified point
|
virtual |
Get the first free id for new cells
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetMeanCurvature | ( | PointIdentifier | idx, |
double | values | ||
) |
Set the mean curvature for the specified point
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetPhi | ( | PointIdentifier | idx, |
double | values | ||
) |
Set the simplex angle for the specified point
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetRadius | ( | PointIdentifier | idx, |
double | values | ||
) |
Set the circum circles radius for the specified point
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SetReferenceMetrics | ( | PointIdentifier | idx, |
PointType | values | ||
) |
Set the reference metrics for a specified point
void itk::SimplexMesh< TPixelType, VDimension, TMeshTraits >::SwapNeighbors | ( | PointIdentifier | pointId, |
PointIdentifier | firstNeighborId, | ||
PointIdentifier | secondNeighborId | ||
) |
Swap the order of two neighbors
|
protected |
The map stores a SimplexMeshGeometry object for each mesh point
Definition at line 271 of file itkSimplexMesh.h.
|
protected |
The last cell id is the index which is used for insertion of new cells. It increases during mesh creation. This is done because one cannot rely on the size of the map or the highest index when cells are removed.
Definition at line 279 of file itkSimplexMesh.h.