template<typename TPixel, unsigned int VDimension, typename TTraits = QuadEdgeMeshTraits<TPixel, VDimension, bool, bool>>
class itk::QuadEdgeMesh< TPixel, VDimension, TTraits >
Mesh class for 2D manifolds embedded in ND space.
- Author
- Alexandre Gouaillard, Leonardo Florez-Valencia, Eric Boix
This implementation was contributed as a paper to the Insight Journal https://doi.org/10.54294/4mx7kk
Definition at line 53 of file itkQuadEdgeMesh.h.
|
| using | ConstPointer = SmartPointer<const Self> |
| |
| using | CoordRepArrayType = CoordinateType[Self::PointDimension] |
| |
| using | DualDataType = typename Traits::DualDataType |
| |
| using | EdgeCellType = QuadEdgeMeshLineCell<CellType> |
| |
| using | EdgeListType = std::list<QEPrimal *> |
| |
| using | FaceRefType = typename Traits::FaceRefType |
| |
| using | FreeCellIndexesType = std::queue<CellIdentifier> |
| |
| using | FreePointIndexesType = std::queue<PointIdentifier> |
| |
| using | MeshClassCellsAllocationMethodEnum = itk::MeshEnums::MeshClassCellsAllocationMethod |
| |
| using | PixelType = TPixel |
| |
| using | Pointer = SmartPointer<Self> |
| |
| using | PointIdInternalIterator = typename CellTraits::PointIdInternalIterator |
| |
| using | PointIdIterator = typename CellTraits::PointIdIterator |
| |
| using | PointIdList = std::vector<PointIdentifier> |
| |
| using | PolygonCellType = QuadEdgeMeshPolygonCell<CellType> |
| |
| using | PrimalDataType = typename Traits::PrimalDataType |
| |
| using | QEDual = typename Traits::QEDual |
| |
| using | QEPrimal = typename Traits::QEPrimal |
| |
| using | QEType = typename Traits::QEPrimal |
| |
| using | Self = QuadEdgeMesh |
| |
| using | Superclass = Mesh<TPixel, VDimension, Traits> |
| |
| using | Traits = TTraits |
| |
| using | VectorType = typename Traits::VectorType |
| |
| using | VertexRefType = typename Traits::VertexRefType |
| |
| 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 = TMeshTraits |
| |
| 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<TPixelType, VDimension, TMeshTraits> |
| |
| using | ConstPointer = SmartPointer<const Self> |
| |
| 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 | PointType = typename MeshTraits::PointType |
| |
| using | Self = PointSet |
| |
| using | Superclass = PointSetBase<typename TMeshTraits::PointsContainer> |
| |
| using | ConstPointer = SmartPointer<const Self> |
| |
| using | CoordinateType = typename PointType::CoordinateType |
| |
| using | Pointer = SmartPointer<Self> |
| |
| using | PointIdentifier = typename TPointsContainer::ElementIdentifier |
| |
| using | PointsContainer = TPointsContainer |
| |
| 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 TPointsContainer::Element |
| |
| using | RegionType = long |
| |
| using | Self = PointSetBase |
| |
| using | Superclass = 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 |
| |
| using | ConstPointer = SmartPointer<const Self> |
| |
| using | Pointer = SmartPointer<Self> |
| |
| using | Self = Object |
| |
| using | Superclass = LightObject |
| |
| using | ConstPointer = SmartPointer<const Self> |
| |
| using | Pointer = SmartPointer<Self> |
| |
| using | Self = LightObject |
| |
|
| virtual QEPrimal * | AddEdge (const PointIdentifier &orgPid, const PointIdentifier &destPid) |
| |
| virtual QEPrimal * | AddEdgeWithSecurePointList (const PointIdentifier &orgPid, const PointIdentifier &destPid) |
| |
| virtual QEPrimal * | AddFace (const PointIdList &points) |
| |
| virtual void | AddFace (QEPrimal *entry) |
| |
| virtual QEPrimal * | AddFaceTriangle (const PointIdentifier &aPid, const PointIdentifier &bPid, const PointIdentifier &cPid) |
| |
| virtual QEPrimal * | AddFaceWithSecurePointList (const PointIdList &points) |
| |
| virtual QEPrimal * | AddFaceWithSecurePointList (const PointIdList &points, bool CheckEdges) |
| |
| virtual PointIdentifier | AddPoint (const PointType &p) |
| |
| void | BuildCellLinks () const |
| |
| virtual void | Clear () |
| |
| void | ClearFreePointAndCellIndexesLists () |
| |
| CoordinateType | ComputeEdgeLength (QEPrimal *e) |
| |
| CellIdentifier | ComputeNumberOfEdges () const |
| |
| CellIdentifier | ComputeNumberOfFaces () const |
| |
| PointIdentifier | ComputeNumberOfPoints () const |
| |
| void | CopyInformation (const DataObject *data) override |
| |
| virtual void | DeleteEdge (const PointIdentifier &orgPid, const PointIdentifier &destPid) |
| |
| virtual void | DeleteEdge (QEPrimal *e) |
| |
| virtual void | DeleteFace (FaceRefType faceToDelete) |
| |
| virtual void | DeletePoint (const PointIdentifier &pid) |
| |
| virtual QEPrimal * | FindEdge (const PointIdentifier &pid0) const |
| |
| virtual QEPrimal * | FindEdge (const PointIdentifier &pid0, const PointIdentifier &pid1) const |
| |
| virtual EdgeCellType * | FindEdgeCell (const PointIdentifier &pid0, const PointIdentifier &pid1) const |
| |
| virtual CellIdentifier | FindFirstUnusedCellIndex () |
| |
| virtual PointIdentifier | FindFirstUnusedPointIndex () |
| |
| bool | GetAssignedCellBoundaryIfOneExists (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellAutoPointer &cellAP) const |
| |
| bool | GetBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellIdentifier *boundaryId) |
| |
| BoundaryAssignmentsContainerPointer | GetBoundaryAssignments (int dimension) |
| |
| const BoundaryAssignmentsContainerPointer | GetBoundaryAssignments (int dimension) const |
| |
| bool | GetCellBoundaryFeature (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellAutoPointer &cellAP) const |
| |
| CellIdentifier | GetCellBoundaryFeatureNeighbors (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, std::set< CellIdentifier > *cellSet) |
| |
| CellIdentifier | GetCellNeighbors (CellIdentifier cellId, std::set< CellIdentifier > *cellSet) |
| |
| virtual QEPrimal * | GetEdge () const |
| |
| virtual QEPrimal * | GetEdge (const CellIdentifier &eid) const |
| |
| CellsContainer * | GetEdgeCells () |
| |
| const CellsContainer * | GetEdgeCells () const |
| |
| CellIdentifier | GetNumberOfEdges () const |
| |
| CellIdentifier | GetNumberOfFaces () const |
| |
| virtual PointType | GetPoint (const PointIdentifier &pid) const |
| |
| bool | GetPoint (PointIdentifier pid, PointType *pt) const |
| |
| virtual VectorType | GetVector (const PointIdentifier &pid) const |
| |
| void | Graft (const DataObject *data) override |
| |
| void | Initialize () override |
| |
| | itkQEDefineFrontIteratorMethodsMacro (Self) |
| |
| virtual void | LightWeightDeleteEdge (EdgeCellType *edgeCell) |
| |
| virtual void | LightWeightDeleteEdge (QEPrimal *e) |
| |
| virtual void | PushOnContainer (EdgeCellType *newEdge) |
| |
| bool | RemoveBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId) |
| |
| bool | RequestedRegionIsOutsideOfTheBufferedRegion () override |
| |
| void | SetBoundaryAssignment (int dimension, CellIdentifier cellId, CellFeatureIdentifier featureId, CellIdentifier boundaryId) |
| |
| void | SetBoundaryAssignments (int dimension, BoundaryAssignmentsContainer *container) |
| |
| void | SetCell (CellIdentifier cId, CellAutoPointer &cell) |
| |
| void | SetEdgeCell (CellIdentifier cellId, CellAutoPointer &cellPointer) |
| |
| void | SetEdgeCells (CellsContainer *edgeCells) |
| |
| PointIdentifier | Splice (QEPrimal *a, QEPrimal *b) |
| |
| void | SqueezePointsIds () |
| |
| virtual void | Accept (CellMultiVisitorType *mv) const |
| |
| void | BuildCellLinks () const |
| |
| 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 BoundingBoxType * | GetBoundingBox () const |
| |
| bool | GetCell (CellIdentifier, CellAutoPointer &) const |
| |
| bool | GetCellBoundaryFeature (int dimension, CellIdentifier, CellFeatureIdentifier, CellAutoPointer &) const |
| |
| CellIdentifier | GetCellBoundaryFeatureNeighbors (int dimension, CellIdentifier, CellFeatureIdentifier, std::set< CellIdentifier > *cellSet) |
| |
| CellDataContainer * | GetCellData () |
| |
| const CellDataContainer * | GetCellData () const |
| |
| bool | GetCellData (CellIdentifier, CellPixelType *) const |
| |
| CellLinksContainer * | GetCellLinks () |
| |
| const CellLinksContainer * | GetCellLinks () const |
| |
| CellIdentifier | GetCellNeighbors (CellIdentifier cellId, std::set< CellIdentifier > *cellSet) |
| |
| CellsContainer * | GetCells () |
| |
| const CellsContainer * | GetCells () const |
| |
| virtual CellsVectorContainer * | GetCellsArray () |
| |
| CellFeatureCount | GetNumberOfCellBoundaryFeatures (int dimension, CellIdentifier) const |
| |
| CellIdentifier | GetNumberOfCells () const |
| |
| 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 MeshClassCellsAllocationMethodEnum & | GetCellsAllocationMethod () const |
| |
| PointDataContainer * | GetPointData () |
| |
| const PointDataContainer * | GetPointData () const |
| |
| bool | GetPointData (PointIdentifier, PixelType *) const |
| |
| void | SetPointData (PointDataContainer *) |
| |
| void | SetPointData (PointIdentifier, PixelType) |
| |
| virtual RegionType | GetBufferedRegion () const |
| |
| virtual RegionType | GetMaximumNumberOfRegions () const |
| |
| PointIdentifier | GetNumberOfPoints () const |
| |
| PointType | GetPoint (PointIdentifier) const |
| |
| bool | GetPoint (PointIdentifier, PointType *) const |
| |
| PointsContainer * | GetPoints () |
| |
| const PointsContainer * | GetPoints () const |
| |
| virtual RegionType | GetRequestedRegion () const |
| |
| | itkCloneMacro (Self) |
| |
| void | PassStructure (Self *inputPointSet) |
| |
| virtual void | SetBufferedRegion (const RegionType ®ion) |
| |
| 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 ®ion) |
| |
| void | SetRequestedRegionToLargestPossibleRegion () override |
| |
| void | UpdateOutputInformation () override |
| |
| bool | VerifyRequestedRegion () override |
| |
| virtual void | DataHasBeenGenerated () |
| |
| void | DisconnectPipeline () |
| |
| bool | GetDataReleased () const |
| |
| virtual const bool & | GetReleaseDataFlag () const |
| |
| SmartPointer< ProcessObject > | GetSource () const |
| |
| DataObjectPointerArraySizeType | GetSourceOutputIndex () const |
| |
| const DataObjectIdentifierType & | GetSourceOutputName () 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 | UpdateSource () const |
| |
| void | SetPipelineMTime (ModifiedTimeType time) |
| |
| virtual const ModifiedTimeType & | GetPipelineMTime () const |
| |
| virtual void | SetRealTimeStamp (RealTimeStamp _arg) |
| |
| virtual const RealTimeStamp & | GetRealTimeStamp () const |
| |
| unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
| |
| unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
| |
| virtual void | DebugOff () const |
| |
| virtual void | DebugOn () const |
| |
| Command * | GetCommand (unsigned long tag) |
| |
| bool | GetDebug () const |
| |
| MetaDataDictionary & | GetMetaDataDictionary () |
| |
| const MetaDataDictionary & | GetMetaDataDictionary () const |
| |
| virtual ModifiedTimeType | GetMTime () const |
| |
| virtual const TimeStamp & | GetTimeStamp () 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 |
| |
| Pointer | Clone () const |
| |
| virtual void | Delete () |
| |
| virtual int | GetReferenceCount () const |
| |
| void | Print (std::ostream &os, Indent indent=0) const |
| |