ITK  6.0.0
Insight Toolkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
itk::VoronoiDiagram2D< TCoordinate > Class Template Reference

#include <itkVoronoiDiagram2D.h>

Detailed Description

template<typename TCoordinate>
class itk::VoronoiDiagram2D< TCoordinate >

Implements the 2-Dimensional Voronoi Diagram.

Given a set of seed points, the Voronoi Diagram partitions the plane into regions, each region is a collection of all pixels that is closest to one particular seed point than to other seed points. VoronoiDiagram2D is a mesh structure for storing the Voronoi Diagram, can be Generated by itkVoronoiDiagram2DGenerator.

Template parameters for VoronoiDiagram2D:

TCoordinate = The type associated with the coordination of the seeds and the resulting vertices.

ITK Sphinx Examples:
Examples
SphinxExamples/src/Segmentation/Voronoi/VoronoiDiagram/Code.cxx.

Definition at line 51 of file itkVoronoiDiagram2D.h.

+ Inheritance diagram for itk::VoronoiDiagram2D< TCoordinate >:
+ Collaboration diagram for itk::VoronoiDiagram2D< TCoordinate >:

Classes

class  VoronoiEdge
 

Public Types

using BoundingBoxPointer = typename BoundingBoxType::Pointer
 
using BoundingBoxType = BoundingBox< PointIdentifier, Self::PointDimension, CoordinateType, PointsContainer >
 
using CellDataContainer = typename MeshTraits::CellDataContainer
 
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 CellLinksContainerIterator = typename CellLinksContainer::ConstIterator
 
using CellLinksContainerPointer = typename CellLinksContainer::Pointer
 
using CellMultiVisitorType = typename CellType::MultiVisitor
 
using CellsContainer = typename MeshTraits::CellsContainer
 
using CellsContainerConstIterator = typename CellsContainer::ConstIterator
 
using CellsContainerIterator = typename CellsContainer::Iterator
 
using CellsContainerPointer = typename CellsContainer::Pointer
 
using CellTraits = typename MeshTraits::CellTraits
 
using ConstPointer = SmartPointer< const Self >
 
using CoordinateType = typename MeshTraits::CoordinateType
 
using Edge = LineCell< CellType >
 
using EdgeAutoPointer = typename Edge::SelfAutoPointer
 
using EdgeInfo = Point< int, 2 >
 
using EdgeInfoDQ = std::deque< EdgeInfo >
 
using genericCellPointer = typename MeshTraits::CellAutoPointer
 
using InterpolationWeightType = typename MeshTraits::InterpolationWeightType
 
using INTvector = std::vector< int >
 
using MeshTraits = DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate >
 
using NeighborIdIterator = typename INTvector::iterator
 
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 PointIdentifier = typename MeshTraits::PointIdentifier
 
using PointList = std::list< PointType >
 
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 PolygonCellType = PolygonCell< CellType >
 
using SeedsIterator = typename SeedsType::iterator
 
using SeedsType = std::vector< PointType >
 
using Self = VoronoiDiagram2D
 
using Superclass = Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
 
using VertexIterator = PointsContainerIterator
 
using VoronoiEdgeIterator = typename std::vector< VoronoiEdge >::iterator
 
- Public Types inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
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, CoordinateType, 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
 
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 CellsVectorContainer = typename itk::VectorContainer< IdentifierType >
 
using CellsVectorContainerPointer = typename CellsVectorContainer::Pointer
 
using CellTraits = typename MeshTraits::CellTraits
 
using CellType = CellInterface< CellPixelType, CellTraits >
 
using ConstPointer = SmartPointer< const Self >
 
using CoordinateType = typename MeshTraits::CoordinateType
 
using InterpolationWeightType = typename MeshTraits::InterpolationWeightType
 
using MeshClassCellsAllocationMethodEnum = MeshEnums::MeshClassCellsAllocationMethod
 
using MeshTraits = DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate >
 
using OutputHexahedronCellType = itk::HexahedronCell< CellType >
 
using OutputLineCellType = itk::LineCell< CellType >
 
using OutputPolygonCellType = itk::PolygonCell< CellType >
 
using OutputPolyLineCellType = itk::PolyLineCell< CellType >
 
using OutputQuadraticEdgeCellType = itk::QuadraticEdgeCell< CellType >
 
using OutputQuadraticTriangleCellType = itk::QuadraticTriangleCell< CellType >
 
using OutputQuadrilateralCellType = itk::QuadrilateralCell< CellType >
 
using OutputTetrahedronCellType = itk::TetrahedronCell< CellType >
 
using OutputTriangleCellType = itk::TriangleCell< CellType >
 
using OutputVertexCellType = itk::VertexCell< CellType >
 
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 Self = Mesh
 
using Superclass = PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
 
- Public Types inherited from itk::PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
using ConstPointer = SmartPointer< const Self >
 
using MeshTraits = DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate >
 
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 PointType = typename MeshTraits::PointType
 
using Self = PointSet
 
using Superclass = PointSetBase< typename DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
 
- Public Types inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
using ConstPointer = SmartPointer< const Self >
 
using CoordinateType = typename PointType::CoordinateType
 
using Pointer = SmartPointer< Self >
 
using PointIdentifier = typename DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer ::ElementIdentifier
 
using PointsContainer = DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer
 
using PointsContainerConstIterator = typename PointsContainer::ConstIterator
 
using PointsContainerConstPointer = typename PointsContainer::ConstPointer
 
using PointsContainerIterator = typename PointsContainer::Iterator
 
using PointsContainerPointer = typename PointsContainer::Pointer
 
using PointsVectorContainer = typename itk::VectorContainer< PointIdentifier, CoordinateType >
 
using PointsVectorContainerPointer = typename PointsVectorContainer::Pointer
 
using PointType = typename DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer ::Element
 
using RegionType = long
 
using Self = PointSetBase
 
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

void AddCellNeighbor (EdgeInfo x)
 
void AddEdge (VoronoiEdge x)
 
void AddLine (EdgeInfo x)
 
void AddVert (PointType x)
 
void BuildEdge (int id)
 
void ClearRegion (int i)
 
VoronoiEdgeIterator EdgeBegin ()
 
VoronoiEdgeIterator EdgeEnd ()
 
void EdgeListClear ()
 
int EdgeListSize ()
 
void GetCellId (CellIdentifier cellId, CellAutoPointer &)
 
VoronoiEdge GetEdge (int id)
 
EdgeInfo GetEdgeEnd (int id)
 
int GetEdgeLineID (int id)
 
EdgeInfo GetLine (int id)
 
const char * GetNameOfClass () const override
 
virtual unsigned int GetNumberOfSeeds () const
 
void GetPoint (int pId, PointType *answer)
 
PointType GetSeed (int SeedID)
 
EdgeInfo GetSeedsIDAroundEdge (VoronoiEdge *task)
 
PointType GetVertex (int id)
 
void InsertCells ()
 
void LineListClear ()
 
int LineListSize ()
 
NeighborIdIterator NeighborIdsBegin (int seeds)
 
NeighborIdIterator NeighborIdsEnd (int seeds)
 
void Reset ()
 
void SetBoundary (PointType vorsize)
 
void SetOrigin (PointType vorsize)
 
void SetSeeds (int num, SeedsIterator begin)
 
VertexIterator VertexBegin ()
 
VertexIterator VertexEnd ()
 
void VertexListClear ()
 
int VertexListSize ()
 
void VoronoiRegionAddPointId (int id, int x)
 
- Public Member Functions inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
virtual void Accept (CellMultiVisitorType *mv) const
 
void BuildCellLinks () const
 
void CopyInformation (const DataObject *data) override
 
void DeleteUnusedCellData ()
 
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
 
bool GetCellData (CellIdentifier, CellPixelType *) const
 
CellLinksContainerGetCellLinks ()
 
const CellLinksContainerGetCellLinks () const
 
CellIdentifier GetCellNeighbors (CellIdentifier cellId, std::set< CellIdentifier > *cellSet)
 
CellsContainerGetCells ()
 
const CellsContainerGetCells () const
 
virtual CellsVectorContainerGetCellsArray ()
 
const char * GetNameOfClass () const override
 
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 SetCellData (CellIdentifier, CellPixelType)
 
void SetCellLinks (CellLinksContainer *)
 
void SetCells (CellsContainer *)
 
virtual void SetCellsArray (CellsVectorContainer *)
 
virtual void SetCellsArray (CellsVectorContainer *, int cellType)
 
virtual void SetCellsAllocationMethod (MeshClassCellsAllocationMethodEnum _arg)
 
virtual const MeshClassCellsAllocationMethodEnumGetCellsAllocationMethod () const
 
- Public Member Functions inherited from itk::PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
PointDataContainerGetPointData ()
 
const PointDataContainerGetPointData () const
 
bool GetPointData (PointIdentifier, PixelType *) const
 
void SetPointData (PointDataContainer *)
 
void SetPointData (PointIdentifier, PixelType)
 
- Public Member Functions inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
virtual RegionType GetBufferedRegion () const
 
virtual RegionType GetMaximumNumberOfRegions () const
 
PointIdentifier GetNumberOfPoints () const
 
PointType GetPoint (PointIdentifier) const
 
bool GetPoint (PointIdentifier, PointType *) const
 
PointsContainerGetPoints ()
 
const PointsContainerGetPoints () const
 
virtual RegionType GetRequestedRegion () const
 
 itkCloneMacro (Self)
 
void PassStructure (Self *inputPointSet)
 
bool RequestedRegionIsOutsideOfTheBufferedRegion () override
 
virtual void SetBufferedRegion (const RegionType &region)
 
void SetPoint (PointIdentifier, PointType)
 
void SetPoints (PointsContainer *)
 
void SetPoints (PointsVectorContainer *)
 
void SetPointsByCoordinates (const std::vector< CoordinateType > &coordinates)
 
void SetRequestedRegion (const DataObject *data) override
 
virtual void SetRequestedRegion (const RegionType &region)
 
void SetRequestedRegionToLargestPossibleRegion () override
 
void UpdateOutputInformation () override
 
bool VerifyRequestedRegion () override
 
- 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 ReleaseDataFlagOn ()
 
virtual void ResetPipeline ()
 
void SetReleaseDataFlag (bool flag)
 
bool ShouldIReleaseData () const
 
virtual void Update ()
 
virtual void UpdateOutputData ()
 
void UpdateSource () const
 
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 *cmd) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
LightObject::Pointer CreateAnother () const override
 
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) const
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
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
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
static constexpr unsigned int GetPointDimension ()
 
- Static Public Member Functions inherited from itk::DataObject
static bool GetGlobalReleaseDataFlag ()
 
static void GlobalReleaseDataFlagOff ()
 
static void GlobalReleaseDataFlagOn ()
 
static Pointer New ()
 
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 val)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int MaxTopologicalDimension = MeshTraits::MaxTopologicalDimension
 
static constexpr unsigned int PointDimension = MeshTraits::PointDimension
 
- Static Public Attributes inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
static constexpr unsigned int MaxTopologicalDimension
 
static constexpr unsigned int PointDimension
 
- Static Public Attributes inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
static constexpr unsigned int PointDimension
 

Protected Member Functions

void PrintSelf (std::ostream &os, Indent indent) const override
 
 VoronoiDiagram2D ()
 
 ~VoronoiDiagram2D () override=default
 
- Protected Member Functions inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
void ReleaseCellsMemory ()
 
 Mesh ()
 
 ~Mesh () override
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
- Protected Member Functions inherited from itk::PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
LightObject::Pointer InternalClone () const override
 
 PointSet ()=default
 
 ~PointSet () override=default
 
- Protected Member Functions inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
LightObject::Pointer InternalClone () const override
 
 PointSetBase ()=default
 
 ~PointSetBase () override=0
 
- 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 &timeStamp)
 
 ~Object () override
 
- Protected Member Functions inherited from itk::LightObject
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Private Attributes

std::vector< std::vector< int > > m_CellNeighborsID {}
 
std::vector< VoronoiEdgem_EdgeList {}
 
std::vector< EdgeInfom_LineList {}
 
unsigned int m_NumberOfSeeds {}
 
SeedsType m_Seeds {}
 
PointType m_VoronoiBoundary {}
 
PointType m_VoronoiBoundaryOrigin {}
 
std::vector< PolygonCellType * > m_VoronoiRegions {}
 

Additional Inherited Members

- Protected Attributes inherited from itk::Mesh< TCoordinate, 2, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
CellsVectorContainerPointer cellOutputVectorContainer
 
BoundaryAssignmentsContainerVector m_BoundaryAssignmentsContainers
 
BoundingBoxPointer m_BoundingBox
 
CellDataContainerPointer m_CellDataContainer
 
CellLinksContainerPointer m_CellLinksContainer
 
CellsContainerPointer m_CellsContainer
 
- Protected Attributes inherited from itk::PointSet< TCoordinate, VDimension, DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > >
PointDataContainerPointer m_PointDataContainer
 
- Protected Attributes inherited from itk::PointSetBase< DefaultDynamicMeshTraits< TCoordinate, 2, 2, TCoordinate > ::PointsContainer >
RegionType m_BufferedRegion
 
RegionType m_MaximumNumberOfRegions
 
RegionType m_NumberOfRegions
 
PointsContainerPointer m_PointsContainer
 
RegionType m_RequestedNumberOfRegions
 
RegionType m_RequestedRegion
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount {}
 

Member Typedef Documentation

◆ BoundingBoxPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::BoundingBoxPointer = typename BoundingBoxType::Pointer

Definition at line 102 of file itkVoronoiDiagram2D.h.

◆ BoundingBoxType

Definition at line 96 of file itkVoronoiDiagram2D.h.

◆ CellDataContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellDataContainer = typename MeshTraits::CellDataContainer

Definition at line 94 of file itkVoronoiDiagram2D.h.

◆ CellDataContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellDataContainerIterator = typename CellDataContainer::ConstIterator

Definition at line 109 of file itkVoronoiDiagram2D.h.

◆ CellDataContainerPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellDataContainerPointer = typename CellDataContainer::Pointer

Definition at line 101 of file itkVoronoiDiagram2D.h.

◆ CellFeatureCount

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellFeatureCount = CellFeatureIdentifier

Definition at line 112 of file itkVoronoiDiagram2D.h.

◆ CellFeatureIdentifier

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellFeatureIdentifier = typename MeshTraits::CellFeatureIdentifier

Definition at line 86 of file itkVoronoiDiagram2D.h.

◆ CellIdentifier

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellIdentifier = typename MeshTraits::CellIdentifier

Definition at line 85 of file itkVoronoiDiagram2D.h.

◆ CellLinksContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellLinksContainer = typename MeshTraits::CellLinksContainer

Definition at line 92 of file itkVoronoiDiagram2D.h.

◆ CellLinksContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellLinksContainerIterator = typename CellLinksContainer::ConstIterator

Definition at line 107 of file itkVoronoiDiagram2D.h.

◆ CellLinksContainerPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellLinksContainerPointer = typename CellLinksContainer::Pointer

Definition at line 99 of file itkVoronoiDiagram2D.h.

◆ CellMultiVisitorType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellMultiVisitorType = typename CellType::MultiVisitor

Definition at line 118 of file itkVoronoiDiagram2D.h.

◆ CellsContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellsContainer = typename MeshTraits::CellsContainer

Definition at line 90 of file itkVoronoiDiagram2D.h.

◆ CellsContainerConstIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellsContainerConstIterator = typename CellsContainer::ConstIterator

Definition at line 105 of file itkVoronoiDiagram2D.h.

◆ CellsContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellsContainerIterator = typename CellsContainer::Iterator

Definition at line 106 of file itkVoronoiDiagram2D.h.

◆ CellsContainerPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellsContainerPointer = typename CellsContainer::Pointer

Definition at line 98 of file itkVoronoiDiagram2D.h.

◆ CellTraits

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CellTraits = typename MeshTraits::CellTraits

Definition at line 89 of file itkVoronoiDiagram2D.h.

◆ ConstPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::ConstPointer = SmartPointer<const Self>

Definition at line 61 of file itkVoronoiDiagram2D.h.

◆ CoordinateType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::CoordinateType = typename MeshTraits::CoordinateType

Definition at line 78 of file itkVoronoiDiagram2D.h.

◆ Edge

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::Edge = LineCell<CellType>

Definition at line 121 of file itkVoronoiDiagram2D.h.

◆ EdgeAutoPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::EdgeAutoPointer = typename Edge::SelfAutoPointer

Definition at line 122 of file itkVoronoiDiagram2D.h.

◆ EdgeInfo

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::EdgeInfo = Point<int, 2>

Definition at line 116 of file itkVoronoiDiagram2D.h.

◆ EdgeInfoDQ

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::EdgeInfoDQ = std::deque<EdgeInfo>

Definition at line 117 of file itkVoronoiDiagram2D.h.

◆ genericCellPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::genericCellPointer = typename MeshTraits::CellAutoPointer

Definition at line 95 of file itkVoronoiDiagram2D.h.

◆ InterpolationWeightType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::InterpolationWeightType = typename MeshTraits::InterpolationWeightType

Definition at line 83 of file itkVoronoiDiagram2D.h.

◆ INTvector

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::INTvector = std::vector<int>

Definition at line 124 of file itkVoronoiDiagram2D.h.

◆ MeshTraits

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::MeshTraits = DefaultDynamicMeshTraits<TCoordinate, 2, 2, TCoordinate>

Define the mesh traits.

Definition at line 70 of file itkVoronoiDiagram2D.h.

◆ NeighborIdIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::NeighborIdIterator = typename INTvector::iterator

Definition at line 125 of file itkVoronoiDiagram2D.h.

◆ PixelType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PixelType = typename MeshTraits::PixelType

Typedefs from itkMesh

Definition at line 77 of file itkVoronoiDiagram2D.h.

◆ PointCellLinksContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointCellLinksContainer = typename MeshTraits::PointCellLinksContainer

Definition at line 91 of file itkVoronoiDiagram2D.h.

◆ PointCellLinksContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointCellLinksContainerIterator = typename PointCellLinksContainer::const_iterator

Definition at line 110 of file itkVoronoiDiagram2D.h.

◆ PointDataContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointDataContainer = typename MeshTraits::PointDataContainer

Definition at line 93 of file itkVoronoiDiagram2D.h.

◆ PointDataContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointDataContainerIterator = typename PointDataContainer::ConstIterator

Definition at line 108 of file itkVoronoiDiagram2D.h.

◆ PointDataContainerPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointDataContainerPointer = typename PointDataContainer::Pointer

Definition at line 100 of file itkVoronoiDiagram2D.h.

◆ Pointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::Pointer = SmartPointer<Self>

Definition at line 60 of file itkVoronoiDiagram2D.h.

◆ PointIdentifier

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointIdentifier = typename MeshTraits::PointIdentifier

Definition at line 84 of file itkVoronoiDiagram2D.h.

◆ PointList

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointList = std::list<PointType>

Definition at line 123 of file itkVoronoiDiagram2D.h.

◆ PointsContainer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointsContainer = typename MeshTraits::PointsContainer

Definition at line 88 of file itkVoronoiDiagram2D.h.

◆ PointsContainerConstIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointsContainerConstIterator = typename PointsContainer::ConstIterator

Definition at line 103 of file itkVoronoiDiagram2D.h.

◆ PointsContainerIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointsContainerIterator = typename PointsContainer::Iterator

Definition at line 104 of file itkVoronoiDiagram2D.h.

◆ PointsContainerPointer

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointsContainerPointer = typename PointsContainer::Pointer

Definition at line 97 of file itkVoronoiDiagram2D.h.

◆ PointType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PointType = typename MeshTraits::PointType

Definition at line 87 of file itkVoronoiDiagram2D.h.

◆ PolygonCellType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::PolygonCellType = PolygonCell<CellType>

Definition at line 115 of file itkVoronoiDiagram2D.h.

◆ SeedsIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::SeedsIterator = typename SeedsType::iterator

Definition at line 120 of file itkVoronoiDiagram2D.h.

◆ SeedsType

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::SeedsType = std::vector<PointType>

Definition at line 119 of file itkVoronoiDiagram2D.h.

◆ Self

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::Self = VoronoiDiagram2D

Standard class type aliases.

Definition at line 58 of file itkVoronoiDiagram2D.h.

◆ Superclass

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::Superclass = Mesh<TCoordinate, 2, DefaultDynamicMeshTraits<TCoordinate, 2, 2, TCoordinate> >

Definition at line 59 of file itkVoronoiDiagram2D.h.

◆ VertexIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::VertexIterator = PointsContainerIterator

Definition at line 126 of file itkVoronoiDiagram2D.h.

◆ VoronoiEdgeIterator

template<typename TCoordinate >
using itk::VoronoiDiagram2D< TCoordinate >::VoronoiEdgeIterator = typename std::vector<VoronoiEdge>::iterator

The iterator for Voronoi edges,

Definition at line 181 of file itkVoronoiDiagram2D.h.

Constructor & Destructor Documentation

◆ VoronoiDiagram2D()

template<typename TCoordinate >
itk::VoronoiDiagram2D< TCoordinate >::VoronoiDiagram2D ( )
protected

◆ ~VoronoiDiagram2D()

template<typename TCoordinate >
itk::VoronoiDiagram2D< TCoordinate >::~VoronoiDiagram2D ( )
overrideprotecteddefault

Member Function Documentation

◆ AddCellNeighbor()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::AddCellNeighbor ( EdgeInfo  x)
inline

Definition at line 203 of file itkVoronoiDiagram2D.h.

◆ AddEdge()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::AddEdge ( VoronoiEdge  x)
inline

Definition at line 275 of file itkVoronoiDiagram2D.h.

◆ AddLine()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::AddLine ( EdgeInfo  x)
inline

Definition at line 269 of file itkVoronoiDiagram2D.h.

◆ AddVert()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::AddVert ( PointType  x)
inline

Definition at line 281 of file itkVoronoiDiagram2D.h.

◆ BuildEdge()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::BuildEdge ( int  id)
inline

Definition at line 222 of file itkVoronoiDiagram2D.h.

◆ ClearRegion()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::ClearRegion ( int  i)
inline

Definition at line 210 of file itkVoronoiDiagram2D.h.

◆ EdgeBegin()

template<typename TCoordinate >
VoronoiEdgeIterator itk::VoronoiDiagram2D< TCoordinate >::EdgeBegin ( )

The Iterator of all the edges for the Voronoi diagram.

◆ EdgeEnd()

template<typename TCoordinate >
VoronoiEdgeIterator itk::VoronoiDiagram2D< TCoordinate >::EdgeEnd ( )

◆ EdgeListClear()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::EdgeListClear ( )
inline

Definition at line 234 of file itkVoronoiDiagram2D.h.

◆ EdgeListSize()

template<typename TCoordinate >
int itk::VoronoiDiagram2D< TCoordinate >::EdgeListSize ( )
inline

Definition at line 257 of file itkVoronoiDiagram2D.h.

◆ GetCellId()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::GetCellId ( CellIdentifier  cellId,
CellAutoPointer  
)

Return the required cell pointer.

◆ GetEdge()

template<typename TCoordinate >
VoronoiEdge itk::VoronoiDiagram2D< TCoordinate >::GetEdge ( int  id)
inline

Definition at line 293 of file itkVoronoiDiagram2D.h.

◆ GetEdgeEnd()

template<typename TCoordinate >
EdgeInfo itk::VoronoiDiagram2D< TCoordinate >::GetEdgeEnd ( int  id)
inline

Definition at line 305 of file itkVoronoiDiagram2D.h.

◆ GetEdgeLineID()

template<typename TCoordinate >
int itk::VoronoiDiagram2D< TCoordinate >::GetEdgeLineID ( int  id)
inline

Definition at line 315 of file itkVoronoiDiagram2D.h.

◆ GetLine()

template<typename TCoordinate >
EdgeInfo itk::VoronoiDiagram2D< TCoordinate >::GetLine ( int  id)
inline

Definition at line 287 of file itkVoronoiDiagram2D.h.

◆ GetNameOfClass()

template<typename TCoordinate >
const char* itk::VoronoiDiagram2D< TCoordinate >::GetNameOfClass ( ) const
overridevirtual
See also
LightObject::GetNameOfClass()

Reimplemented from itk::DataObject.

◆ GetNumberOfSeeds()

template<typename TCoordinate >
virtual unsigned int itk::VoronoiDiagram2D< TCoordinate >::GetNumberOfSeeds ( ) const
virtual

Get the number of Voronoi seeds.

◆ GetPoint()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::GetPoint ( int  pId,
PointType answer 
)

Return the given vertex of the voronoi diagram.

◆ GetSeed()

template<typename TCoordinate >
PointType itk::VoronoiDiagram2D< TCoordinate >::GetSeed ( int  SeedID)

Return the given indexed seed.

◆ GetSeedsIDAroundEdge()

template<typename TCoordinate >
EdgeInfo itk::VoronoiDiagram2D< TCoordinate >::GetSeedsIDAroundEdge ( VoronoiEdge task)

Find the two seed point that around the given edge.

◆ GetVertex()

template<typename TCoordinate >
PointType itk::VoronoiDiagram2D< TCoordinate >::GetVertex ( int  id)
inline

Definition at line 299 of file itkVoronoiDiagram2D.h.

◆ InsertCells()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::InsertCells ( )

◆ LineListClear()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::LineListClear ( )
inline

Definition at line 228 of file itkVoronoiDiagram2D.h.

◆ LineListSize()

template<typename TCoordinate >
int itk::VoronoiDiagram2D< TCoordinate >::LineListSize ( )
inline

Definition at line 251 of file itkVoronoiDiagram2D.h.

◆ NeighborIdsBegin()

template<typename TCoordinate >
NeighborIdIterator itk::VoronoiDiagram2D< TCoordinate >::NeighborIdsBegin ( int  seeds)

Iterators for the neighborhood cells around the given cell.

◆ NeighborIdsEnd()

template<typename TCoordinate >
NeighborIdIterator itk::VoronoiDiagram2D< TCoordinate >::NeighborIdsEnd ( int  seeds)

◆ New()

template<typename TCoordinate >
static Pointer itk::VoronoiDiagram2D< TCoordinate >::New ( )
static

Method for creation through the object factory.

◆ PrintSelf()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::DataObject.

◆ Reset()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::Reset ( )

◆ SetBoundary()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::SetBoundary ( PointType  vorsize)

The boundary that encloses the whole Voronoi diagram.

◆ SetOrigin()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::SetOrigin ( PointType  vorsize)

◆ SetSeeds()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::SetSeeds ( int  num,
SeedsIterator  begin 
)

Input the seeds information, will overwrite if seeds already exists.

◆ VertexBegin()

template<typename TCoordinate >
VertexIterator itk::VoronoiDiagram2D< TCoordinate >::VertexBegin ( )

Iterators for all the vertices of the voronoi diagram.

◆ VertexEnd()

template<typename TCoordinate >
VertexIterator itk::VoronoiDiagram2D< TCoordinate >::VertexEnd ( )

◆ VertexListClear()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::VertexListClear ( )
inline

Definition at line 240 of file itkVoronoiDiagram2D.h.

References New().

◆ VertexListSize()

template<typename TCoordinate >
int itk::VoronoiDiagram2D< TCoordinate >::VertexListSize ( )
inline

Definition at line 263 of file itkVoronoiDiagram2D.h.

◆ VoronoiRegionAddPointId()

template<typename TCoordinate >
void itk::VoronoiDiagram2D< TCoordinate >::VoronoiRegionAddPointId ( int  id,
int  x 
)
inline

Definition at line 216 of file itkVoronoiDiagram2D.h.

Member Data Documentation

◆ m_CellNeighborsID

template<typename TCoordinate >
std::vector<std::vector<int> > itk::VoronoiDiagram2D< TCoordinate >::m_CellNeighborsID {}
private

Definition at line 332 of file itkVoronoiDiagram2D.h.

◆ m_EdgeList

template<typename TCoordinate >
std::vector<VoronoiEdge> itk::VoronoiDiagram2D< TCoordinate >::m_EdgeList {}
private

Definition at line 335 of file itkVoronoiDiagram2D.h.

◆ m_LineList

template<typename TCoordinate >
std::vector<EdgeInfo> itk::VoronoiDiagram2D< TCoordinate >::m_LineList {}
private

Definition at line 334 of file itkVoronoiDiagram2D.h.

◆ m_NumberOfSeeds

template<typename TCoordinate >
unsigned int itk::VoronoiDiagram2D< TCoordinate >::m_NumberOfSeeds {}
private

Definition at line 328 of file itkVoronoiDiagram2D.h.

◆ m_Seeds

template<typename TCoordinate >
SeedsType itk::VoronoiDiagram2D< TCoordinate >::m_Seeds {}
private

Definition at line 327 of file itkVoronoiDiagram2D.h.

◆ m_VoronoiBoundary

template<typename TCoordinate >
PointType itk::VoronoiDiagram2D< TCoordinate >::m_VoronoiBoundary {}
private

Definition at line 330 of file itkVoronoiDiagram2D.h.

◆ m_VoronoiBoundaryOrigin

template<typename TCoordinate >
PointType itk::VoronoiDiagram2D< TCoordinate >::m_VoronoiBoundaryOrigin {}
private

Definition at line 331 of file itkVoronoiDiagram2D.h.

◆ m_VoronoiRegions

template<typename TCoordinate >
std::vector<PolygonCellType *> itk::VoronoiDiagram2D< TCoordinate >::m_VoronoiRegions {}
private

Definition at line 329 of file itkVoronoiDiagram2D.h.

◆ MaxTopologicalDimension

template<typename TCoordinate >
constexpr unsigned int itk::VoronoiDiagram2D< TCoordinate >::MaxTopologicalDimension = MeshTraits::MaxTopologicalDimension
staticconstexpr

Definition at line 74 of file itkVoronoiDiagram2D.h.

◆ PointDimension

template<typename TCoordinate >
constexpr unsigned int itk::VoronoiDiagram2D< TCoordinate >::PointDimension = MeshTraits::PointDimension
staticconstexpr

Dimensions of the points and topology.

Definition at line 73 of file itkVoronoiDiagram2D.h.


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