The MeshFacetIterator allows to iterate over the facets that hold the topology of the mesh and provides access to their geometric information. More...
#include <Iterator.h>
Public Member Functions | |
Construction | |
MeshFacetIterator (const MeshKernel &rclM) | |
construction More... | |
MeshFacetIterator (const MeshKernel &rclM, unsigned long ulPos) | |
construction More... | |
MeshFacetIterator (const MeshFacetIterator &rclI) | |
construction More... | |
Transformation | |
void | Transform (const Base::Matrix4D &rclTrf) |
Transforms the returned facet points with the current transformation. More... | |
Access methods | |
const MeshGeomFacet & | operator* (void) |
Access to the element the iterator points to. More... | |
const MeshGeomFacet * | operator-> (void) |
Access to the element the iterator points to. More... | |
const MeshFacetIterator & | operator++ (void) |
Increments the iterator. More... | |
const MeshFacetIterator & | operator-- (void) |
Decrements the iterator. More... | |
const MeshFacetIterator & | operator+= (int k) |
Increments the iterator by k positions. More... | |
const MeshFacetIterator & | operator-= (int k) |
Decrements the iterator by k positions. More... | |
MeshFacetIterator & | operator= (const MeshFacetIterator &rpI) |
Assignment. More... | |
bool | operator< (const MeshFacetIterator &rclI) const |
Compares if this iterator points to a lower element than the other one. More... | |
bool | operator> (const MeshFacetIterator &rclI) const |
Compares if this iterator points to a higher element than the other one. More... | |
bool | operator== (const MeshFacetIterator &rclI) const |
Checks if the iterators points to the same element. More... | |
void | Begin (void) |
Sets the iterator to the beginning of the array. More... | |
void | End (void) |
Sets the iterator to the end of the array. More... | |
unsigned long | Position (void) const |
Returns the current position of the iterator in the array. More... | |
bool | EndReached (void) const |
Checks if the end is already reached. More... | |
void | Init (void) |
Sets the iterator to the beginning of the array. More... | |
bool | More (void) const |
Checks if the end is not yet reached. More... | |
void | Next (void) |
Increments the iterator. More... | |
bool | Set (unsigned long ulIndex) |
Sets the iterator to a given position. More... | |
MeshFacet | GetIndices (void) const |
Returns the topologic facet. More... | |
const MeshFacet & | GetReference (void) const |
Returns the topologic facet. More... | |
void | GetNeighbours (MeshFacetIterator &rclN0, MeshFacetIterator &rclN1, MeshFacetIterator &rclN2) const |
Returns iterators pointing to the current facet's neighbours. More... | |
void | SetToNeighbour (unsigned short usN) |
Sets the iterator to the current facet's neighbour of the side usN. More... | |
unsigned long | GetProperty (void) const |
Returns the property information to the current facet. More... | |
bool | IsValid (void) const |
Checks if the iterator points to a valid element inside the array. More... | |
Flag state | |
class | MeshKernel |
void | SetFlag (MeshFacet::TFlagType tF) const |
void | ResetFlag (MeshFacet::TFlagType tF) const |
bool | IsFlag (MeshFacet::TFlagType tF) const |
void | SetProperty (unsigned long uP) const |
const MeshGeomFacet & | Dereference (void) |
Detailed Description
The MeshFacetIterator allows to iterate over the facets that hold the topology of the mesh and provides access to their geometric information.
- Note
- This class is not thread-safe.
Constructor & Destructor Documentation
◆ MeshFacetIterator() [1/3]
MeshCore::MeshFacetIterator::MeshFacetIterator | ( | const MeshKernel & | rclM | ) |
construction
◆ MeshFacetIterator() [2/3]
MeshCore::MeshFacetIterator::MeshFacetIterator | ( | const MeshKernel & | rclM, |
unsigned long | ulPos | ||
) |
construction
◆ MeshFacetIterator() [3/3]
MeshCore::MeshFacetIterator::MeshFacetIterator | ( | const MeshFacetIterator & | rclI | ) |
construction
Member Function Documentation
◆ Begin()
void MeshCore::MeshFacetIterator::Begin | ( | void | ) |
Sets the iterator to the beginning of the array.
Referenced by MeshCore::MeshEvalSelfIntersection::Evaluate(), MeshCore::MeshKernel::FacetIterator(), Mesh::MeshPy::foraminate(), and MeshCore::MeshEvalSelfIntersection::GetIntersections().
◆ Dereference()
|
protected |
◆ End()
void MeshCore::MeshFacetIterator::End | ( | void | ) |
Sets the iterator to the end of the array.
Referenced by Mesh::AmfExporter::addMesh(), MeshCore::MeshKernel::DeletePoint(), MeshCore::MeshInfo::DetailedFacetInfo(), MeshCore::MeshOutput::SaveAsciiSTL(), MeshCore::MeshOutput::SaveBinarySTL(), MeshCore::MeshOutput::SaveInventor(), and MeshCore::MeshOutput::SaveOBJ().
◆ EndReached()
bool MeshCore::MeshFacetIterator::EndReached | ( | void | ) | const |
Checks if the end is already reached.
Referenced by MeshCore::MeshEvalDegeneratedFacets::CountEdgeTooSmall().
◆ GetIndices()
MeshFacet MeshCore::MeshFacetIterator::GetIndices | ( | void | ) | const |
Returns the topologic facet.
Referenced by MeshCore::MeshRemoveNeedles::Fixup(), MeshCore::MeshOutput::SaveNastran(), and MeshCore::MeshOutput::SaveVRML().
◆ GetNeighbours()
void MeshCore::MeshFacetIterator::GetNeighbours | ( | MeshFacetIterator & | rclN0, |
MeshFacetIterator & | rclN1, | ||
MeshFacetIterator & | rclN2 | ||
) | const |
Returns iterators pointing to the current facet's neighbours.
◆ GetProperty()
unsigned long MeshCore::MeshFacetIterator::GetProperty | ( | void | ) | const |
Returns the property information to the current facet.
◆ GetReference()
const MeshFacet& MeshCore::MeshFacetIterator::GetReference | ( | void | ) | const |
Returns the topologic facet.
Referenced by MeshCore::MeshFixDeformedFacets::Fixup().
◆ Init()
void MeshCore::MeshFacetIterator::Init | ( | void | ) |
Sets the iterator to the beginning of the array.
Referenced by MeshGui::ViewProviderMeshTransformDemolding::calcNormalVector(), MeshCore::MeshTrimming::CheckFacets(), MeshCore::MeshAlgorithm::CheckFacets(), MeshCore::MeshEvalDegeneratedFacets::Evaluate(), MeshCore::MeshEvalDeformedFacets::Evaluate(), MeshPart::CurveProjectorShape::findStartPoint(), MeshPart::CurveProjectorSimple::findStartPoint(), MeshCore::MeshFixDegeneratedFacets::Fixup(), MeshCore::MeshRemoveNeedles::Fixup(), MeshCore::MeshFixDeformedFacets::Fixup(), MeshCore::MeshFixCorruptedFacets::Fixup(), MeshCore::MeshAlgorithm::GetAverageEdgeLength(), MeshCore::MeshAlgorithm::GetFacetsFromToolMesh(), MeshCore::MeshEvalDegeneratedFacets::GetIndices(), MeshCore::MeshEvalDeformedFacets::GetIndices(), MeshCore::MeshAlgorithm::GetMaximumEdgeLength(), MeshCore::MeshAlgorithm::GetMinimumEdgeLength(), MeshCore::MeshKernel::GetSurface(), MeshCore::MeshKernel::GetVolume(), MeshPart::CurveProjectorWithToolMesh::makeToolMesh(), MeshCore::MeshAlgorithm::NearestFacetOnRay(), MeshCore::MeshAlgorithm::NearestPointFromPoint(), MeshPart::MeshAlgos::offsetSpecial2(), Mesh::MeshObject::offsetSpecial2(), MeshPart::CurveProjectorSimple::projectCurve(), MeshCore::MeshFacetGrid::RebuildGrid(), Inspection::MeshInspectGrid::RebuildGrid(), MeshCore::MeshSearchNeighbours::SampleAllFacets(), MeshCore::MeshOutput::SaveNastran(), MeshCore::MeshOutput::SavePython(), MeshCore::MeshOutput::SaveVRML(), MeshCore::MeshAlgorithm::SubSampleByDist(), MeshCore::MeshAlgorithm::Surface(), and MeshCore::MeshAlgorithm::Surround().
◆ IsFlag()
bool MeshCore::MeshFacetIterator::IsFlag | ( | MeshFacet::TFlagType | tF | ) | const |
◆ IsValid()
bool MeshCore::MeshFacetIterator::IsValid | ( | void | ) | const |
Checks if the iterator points to a valid element inside the array.
◆ More()
bool MeshCore::MeshFacetIterator::More | ( | void | ) | const |
Checks if the end is not yet reached.
Referenced by MeshGui::ViewProviderMeshTransformDemolding::calcNormalVector(), MeshCore::MeshTrimming::CheckFacets(), MeshCore::MeshAlgorithm::CheckFacets(), MeshCore::MeshEvalDegeneratedFacets::Evaluate(), MeshCore::MeshEvalSelfIntersection::Evaluate(), MeshCore::MeshEvalDeformedFacets::Evaluate(), MeshPart::CurveProjectorShape::findStartPoint(), MeshPart::CurveProjectorSimple::findStartPoint(), MeshCore::MeshFixDegeneratedFacets::Fixup(), MeshCore::MeshRemoveNeedles::Fixup(), MeshCore::MeshFixDeformedFacets::Fixup(), MeshCore::MeshFixCorruptedFacets::Fixup(), Mesh::MeshPy::foraminate(), MeshCore::MeshAlgorithm::GetAverageEdgeLength(), MeshCore::MeshAlgorithm::GetFacetsFromToolMesh(), MeshCore::MeshEvalDegeneratedFacets::GetIndices(), MeshCore::MeshEvalDeformedFacets::GetIndices(), MeshCore::MeshEvalSelfIntersection::GetIntersections(), MeshCore::MeshAlgorithm::GetMaximumEdgeLength(), MeshCore::MeshAlgorithm::GetMinimumEdgeLength(), MeshCore::MeshKernel::GetSurface(), MeshCore::MeshKernel::GetVolume(), MeshPart::CurveProjectorWithToolMesh::makeToolMesh(), MeshCore::MeshAlgorithm::NearestFacetOnRay(), MeshCore::MeshAlgorithm::NearestPointFromPoint(), MeshPart::MeshAlgos::offsetSpecial2(), Mesh::MeshObject::offsetSpecial2(), MeshPart::CurveProjectorSimple::projectCurve(), MeshCore::MeshFacetGrid::RebuildGrid(), Inspection::MeshInspectGrid::RebuildGrid(), MeshCore::MeshSearchNeighbours::SampleAllFacets(), MeshCore::MeshOutput::SaveNastran(), MeshCore::MeshOutput::SavePython(), MeshCore::MeshOutput::SaveVRML(), MeshCore::MeshAlgorithm::SubSampleByDist(), MeshCore::MeshAlgorithm::Surface(), and MeshCore::MeshAlgorithm::Surround().
◆ Next()
void MeshCore::MeshFacetIterator::Next | ( | void | ) |
Increments the iterator.
Referenced by MeshGui::ViewProviderMeshTransformDemolding::calcNormalVector(), MeshCore::MeshTrimming::CheckFacets(), MeshCore::MeshAlgorithm::CheckFacets(), MeshCore::MeshEvalDegeneratedFacets::Evaluate(), MeshCore::MeshEvalSelfIntersection::Evaluate(), MeshCore::MeshEvalDeformedFacets::Evaluate(), MeshPart::CurveProjectorShape::findStartPoint(), MeshPart::CurveProjectorSimple::findStartPoint(), MeshCore::MeshFixDegeneratedFacets::Fixup(), MeshCore::MeshRemoveNeedles::Fixup(), MeshCore::MeshFixDeformedFacets::Fixup(), MeshCore::MeshFixCorruptedFacets::Fixup(), Mesh::MeshPy::foraminate(), MeshCore::MeshAlgorithm::GetAverageEdgeLength(), MeshCore::MeshAlgorithm::GetFacetsFromToolMesh(), MeshCore::MeshEvalDegeneratedFacets::GetIndices(), MeshCore::MeshEvalDeformedFacets::GetIndices(), MeshCore::MeshEvalSelfIntersection::GetIntersections(), MeshCore::MeshAlgorithm::GetMaximumEdgeLength(), MeshCore::MeshAlgorithm::GetMinimumEdgeLength(), MeshCore::MeshKernel::GetSurface(), MeshCore::MeshKernel::GetVolume(), MeshPart::CurveProjectorWithToolMesh::makeToolMesh(), MeshCore::MeshAlgorithm::NearestFacetOnRay(), MeshCore::MeshAlgorithm::NearestPointFromPoint(), MeshPart::MeshAlgos::offsetSpecial2(), Mesh::MeshObject::offsetSpecial2(), MeshPart::CurveProjectorSimple::projectCurve(), MeshCore::MeshFacetGrid::RebuildGrid(), Inspection::MeshInspectGrid::RebuildGrid(), MeshCore::MeshSearchNeighbours::SampleAllFacets(), MeshCore::MeshOutput::SaveNastran(), MeshCore::MeshOutput::SavePython(), MeshCore::MeshOutput::SaveVRML(), MeshCore::MeshAlgorithm::SubSampleByDist(), MeshCore::MeshAlgorithm::Surface(), and MeshCore::MeshAlgorithm::Surround().
◆ operator*()
const MeshGeomFacet& MeshCore::MeshFacetIterator::operator* | ( | void | ) |
Access to the element the iterator points to.
◆ operator++()
const MeshFacetIterator& MeshCore::MeshFacetIterator::operator++ | ( | void | ) |
Increments the iterator.
It points then to the next element if the end is not reached.
◆ operator+=()
const MeshFacetIterator& MeshCore::MeshFacetIterator::operator+= | ( | int | k | ) |
Increments the iterator by k positions.
◆ operator--()
const MeshFacetIterator& MeshCore::MeshFacetIterator::operator-- | ( | void | ) |
Decrements the iterator.
It points then to the previous element if the beginning is not reached.
◆ operator-=()
const MeshFacetIterator& MeshCore::MeshFacetIterator::operator-= | ( | int | k | ) |
Decrements the iterator by k positions.
◆ operator->()
const MeshGeomFacet* MeshCore::MeshFacetIterator::operator-> | ( | void | ) |
Access to the element the iterator points to.
◆ operator<()
bool MeshCore::MeshFacetIterator::operator< | ( | const MeshFacetIterator & | rclI | ) | const |
Compares if this iterator points to a lower element than the other one.
◆ operator=()
MeshFacetIterator & MeshCore::MeshFacetIterator::operator= | ( | const MeshFacetIterator & | rpI | ) |
Assignment.
◆ operator==()
bool MeshCore::MeshFacetIterator::operator== | ( | const MeshFacetIterator & | rclI | ) | const |
Checks if the iterators points to the same element.
◆ operator>()
bool MeshCore::MeshFacetIterator::operator> | ( | const MeshFacetIterator & | rclI | ) | const |
Compares if this iterator points to a higher element than the other one.
◆ Position()
unsigned long MeshCore::MeshFacetIterator::Position | ( | void | ) | const |
Returns the current position of the iterator in the array.
Referenced by MeshCore::MeshTrimming::CheckFacets(), MeshCore::MeshAlgorithm::CheckFacets(), MeshCore::MeshKernel::DeleteFacet(), MeshPart::CurveProjectorShape::findStartPoint(), MeshPart::CurveProjectorSimple::findStartPoint(), MeshCore::MeshFixDegeneratedFacets::Fixup(), MeshCore::MeshFixDeformedFacets::Fixup(), MeshCore::MeshFixCorruptedFacets::Fixup(), MeshCore::MeshAlgorithm::GetFacetsFromToolMesh(), MeshCore::MeshEvalDegeneratedFacets::GetIndices(), MeshCore::MeshEvalDeformedFacets::GetIndices(), MeshCore::MeshAlgorithm::NearestFacetOnRay(), MeshCore::MeshAlgorithm::NearestPointFromPoint(), MeshPart::MeshAlgos::offsetSpecial2(), Mesh::MeshObject::offsetSpecial2(), and MeshPart::CurveProjectorSimple::projectCurve().
◆ ResetFlag()
void MeshCore::MeshFacetIterator::ResetFlag | ( | MeshFacet::TFlagType | tF | ) | const |
◆ Set()
bool MeshCore::MeshFacetIterator::Set | ( | unsigned long | ulIndex | ) |
Sets the iterator to a given position.
Referenced by MeshCore::MeshKernel::DeleteFacet(), MeshCore::MeshEvalSelfIntersection::Evaluate(), Mesh::SegmentByMesh::execute(), MeshCore::MeshFixDegeneratedFacets::Fixup(), MeshCore::MeshFixCorruptedFacets::Fixup(), MeshCore::MeshAlgorithm::GetFacetsFromToolMesh(), MeshCore::MeshEvalSelfIntersection::GetIntersections(), MeshCore::MeshKernel::GetSurface(), MeshPart::MeshProjection::projectEdgeToEdge(), Mesh::MeshObject::refine(), MeshGui::ViewProviderMeshOrientation::showDefects(), MeshGui::ViewProviderMeshDuplicatedFaces::showDefects(), MeshGui::ViewProviderMeshDegenerations::showDefects(), MeshGui::ViewProviderMeshIndices::showDefects(), MeshGui::ViewProviderMeshFolds::showDefects(), Mesh::MeshObject::splitEdges(), and MeshCore::MeshFacetGrid::Verify().
◆ SetFlag()
void MeshCore::MeshFacetIterator::SetFlag | ( | MeshFacet::TFlagType | tF | ) | const |
Referenced by MeshCore::MeshRemoveNeedles::Fixup().
◆ SetProperty()
void MeshCore::MeshFacetIterator::SetProperty | ( | unsigned long | uP | ) | const |
◆ SetToNeighbour()
void MeshCore::MeshFacetIterator::SetToNeighbour | ( | unsigned short | usN | ) |
Sets the iterator to the current facet's neighbour of the side usN.
◆ Transform()
void MeshCore::MeshFacetIterator::Transform | ( | const Base::Matrix4D & | rclTrf | ) |
Transforms the returned facet points with the current transformation.
Referenced by Inspection::MeshInspectGrid::RebuildGrid(), MeshCore::MeshOutput::SavePython(), and MeshCore::MeshOutput::SaveVRML().
Friends And Related Function Documentation
◆ MeshKernel
|
friend |
The documentation for this class was generated from the following file:
- src/Mod/Mesh/App/Core/Iterator.h