Public Member Functions | |
triSurfAddressing (const pointField &points, const LongList< labelledTri > &triangles) | |
Construct from surface triangles. More... | |
~triSurfAddressing () | |
const VRWGraph & | pointFacets () const |
return point-facets addressing More... | |
const LongList< edge > & | edges () const |
return edges More... | |
const VRWGraph & | facetEdges () const |
return facet-edges addressing More... | |
const VRWGraph & | edgeFacets () const |
return edge-facets addressing More... | |
const VRWGraph & | pointEdges () const |
return point-edges addressing More... | |
const VRWGraph & | facetFacets () const |
return facet-facets addressing More... | |
const pointField & | pointNormals () const |
return point normals More... | |
const vectorField & | facetNormals () const |
return normals of facets More... | |
const vectorField & | facetCentres () const |
return centres of facets More... | |
void | clearAddressing () |
delete all data More... | |
void | clearGeometry () |
delete geometry data More... | |
Private Member Functions | |
void | calculatePointFacets () const |
calculate point-facets addressing More... | |
void | calculateEdges () const |
calculate edges, facet-edges and edge-facets addressing More... | |
void | calculateFacetEdges () const |
calculate facet-edges addresing More... | |
void | calculateEdgeFacets () const |
calculate edge-facets addressing More... | |
void | calculatePointEdges () const |
calculate point-edges addressing More... | |
void | calculateFacetFacetsEdges () const |
calculate facet-faceys addressing More... | |
void | calculatePointNormals () const |
calculate point normals More... | |
void | calculateFacetNormals () const |
calculate normals of facets More... | |
void | calculateFacetCentres () const |
calculate centres of facets More... | |
void | operator= (const triSurfAddressing &) |
triSurfAddressing (const triSurfAddressing &) | |
Private Attributes | |
const pointField & | points_ |
const reference to the points More... | |
const LongList< labelledTri > & | facets_ |
const reference to the facets More... | |
VRWGraph * | pointFacetsPtr_ |
facets connected to a point More... | |
edgeLongList * | edgesPtr_ |
edges in the triangulation More... | |
VRWGraph * | facetEdgesPtr_ |
labels of edges in the triangles More... | |
VRWGraph * | edgeFacetsPtr_ |
labels of triangles connected to an edge More... | |
VRWGraph * | pointEdgesPtr_ |
labels of edges connected to a point More... | |
VRWGraph * | facetFacetsEdgesPtr_ |
facets connected tp a facet via edges More... | |
vectorField * | pointNormalsPtr_ |
point normals More... | |
vectorField * | facetNormalsPtr_ |
face normals More... | |
vectorField * | facetCentresPtr_ |
face centres More... | |
Definition at line 52 of file triSurfAddressing.H.
|
private |
triSurfAddressing | ( | const pointField & | points, |
const LongList< labelledTri > & | triangles | ||
) |
Construct from surface triangles.
Definition at line 312 of file triSurfAddressing.C.
~triSurfAddressing | ( | ) |
Definition at line 332 of file triSurfAddressing.C.
References triSurfAddressing::clearAddressing(), and triSurfAddressing::clearGeometry().
|
private |
calculate point-facets addressing
Definition at line 41 of file triSurfAddressing.C.
References triSurfAddressing::facets_, triSurfAddressing::pointFacetsPtr_, and VRWGraphSMPModifier::reverseAddressing().
Referenced by triSurfAddressing::pointFacets().
|
private |
calculate edges, facet-edges and edge-facets addressing
this enables other threads to see the number of edges generated by each thread
find the starting position of the edges generated by this thread in the global list of edges
store edges into the global list
Definition at line 48 of file triSurfAddressing.C.
References LongList< T, Offset >::append(), triSurfAddressing::edgesPtr_, triSurfAddressing::facets_, forAll, forAllRow, LongList< T, Offset >::operator, triSurfAddressing::pointFacets(), LongList< T, Offset >::setSize(), LongList< T, Offset >::size(), and VRWGraph::size().
Referenced by triSurfAddressing::edges().
|
private |
calculate facet-edges addresing
Definition at line 144 of file triSurfAddressing.C.
References Foam::abort(), Foam::e, triSurfAddressing::edges(), triSurfAddressing::facetEdgesPtr_, triSurfAddressing::facets_, Foam::FatalError, FatalErrorIn, forAll, forAllRow, triSurfAddressing::pointFacets(), triSurfAddressing::points_, LongList< T, Offset >::size(), and edge::start().
Referenced by triSurfAddressing::facetEdges().
|
private |
calculate edge-facets addressing
Definition at line 203 of file triSurfAddressing.C.
References triSurfAddressing::edgeFacetsPtr_, triSurfAddressing::edges(), triSurfAddressing::facetEdges(), VRWGraphSMPModifier::reverseAddressing(), and LongList< T, Offset >::size().
Referenced by triSurfAddressing::edgeFacets().
|
private |
calculate point-edges addressing
Definition at line 213 of file triSurfAddressing.C.
References triSurfAddressing::edges(), triSurfAddressing::pointEdgesPtr_, triSurfAddressing::points_, and VRWGraph::reverseAddressing().
Referenced by triSurfAddressing::pointEdges().
|
private |
calculate facet-faceys addressing
Definition at line 222 of file triSurfAddressing.C.
References triSurfAddressing::edgeFacets(), triSurfAddressing::facetEdges(), triSurfAddressing::facetFacetsEdgesPtr_, triSurfAddressing::facets_, forAll, forAllConstIter(), forAllRow, HashSet< Key, Hash >::insert(), VRWGraph::setRowSize(), VRWGraph::setSize(), and HashTable::size().
Referenced by triSurfAddressing::facetFacets().
|
private |
calculate point normals
Definition at line 251 of file triSurfAddressing.C.
References triSurfAddressing::facetNormals(), forAllRow, Foam::mag(), triSurfAddressing::pointFacets(), triSurfAddressing::pointNormalsPtr_, VRWGraph::size(), and Vector< scalar >::zero.
Referenced by triSurfAddressing::pointNormals().
|
private |
calculate normals of facets
Definition at line 283 of file triSurfAddressing.C.
References triSurfAddressing::facetNormalsPtr_, triSurfAddressing::facets_, forAll, Foam::mag(), and triSurfAddressing::points_.
Referenced by triSurfAddressing::facetNormals().
|
private |
calculate centres of facets
Definition at line 298 of file triSurfAddressing.C.
References triSurfAddressing::facetCentresPtr_, triSurfAddressing::facets_, forAll, and triSurfAddressing::points_.
Referenced by triSurfAddressing::facetCentres().
|
private |
|
inline |
return point-facets addressing
Definition at line 43 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculatePointFacets(), Foam::FatalError, FatalErrorIn, and triSurfAddressing::pointFacetsPtr_.
Referenced by triSurfacePartitioner::calculateCornersAndAddressing(), triSurfAddressing::calculateEdges(), triSurfAddressing::calculateFacetEdges(), triSurfAddressing::calculatePointNormals(), triSurfaceCurvatureEstimator::calculateSurfaceCurvatures(), triSurfaceCleanupDuplicateTriangles::checkDuplicateTriangles(), triSurfaceCleanupDuplicates::checkDuplicateTriangles(), findCellsIntersectingSurface::findIntersectedCells(), partTriMesh::pointTriangles(), partTriMesh::updateVertex(), partTriMesh::updateVertices(), and partTriMesh::updateVerticesSMP().
|
inline |
return edges
Definition at line 61 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateEdges(), triSurfAddressing::edgesPtr_, Foam::FatalError, and FatalErrorIn.
Referenced by triSurfacePatchManipulator::allocateFeatureEdges(), triSurfacePartitioner::calculateCornersAndAddressing(), triSurfaceCurvatureEstimator::calculateEdgeCurvature(), triSurfAddressing::calculateEdgeFacets(), triSurfacePartitioner::calculateEdgeGroups(), triSurfAddressing::calculateFacetEdges(), triSurfAddressing::calculatePointEdges(), triSurfaceClassifyEdges::classifyEdgesTypes(), triSurfaceCurvatureEstimator::curvatureAtEdge(), triSurfaceDetectFeatureEdges::detectFeatureEdges(), meshOctree::findEdgesInBox(), and triSurfaceRemoveFacets::removeFacets().
|
inline |
return facet-edges addressing
Definition at line 79 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateFacetEdges(), triSurfAddressing::facetEdgesPtr_, Foam::FatalError, and FatalErrorIn.
Referenced by triSurfAddressing::calculateEdgeFacets(), triSurfAddressing::calculateFacetFacetsEdges(), Foam::triSurfaceChecks::checkDisconnectedParts(), triSurfaceClassifyEdges::checkOrientation(), Foam::triSurfaceChecks::checkOrientation(), Foam::triSurfaceChecks::checkSurfaceManifolds(), and triSurfacePatchManipulator::createPatches().
|
inline |
return edge-facets addressing
Definition at line 97 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateEdgeFacets(), triSurfAddressing::edgeFacetsPtr_, Foam::FatalError, and FatalErrorIn.
Referenced by triSurfacePartitioner::calculateCornersAndAddressing(), triSurfaceCurvatureEstimator::calculateEdgeCurvature(), triSurfacePartitioner::calculateEdgeGroups(), triSurfAddressing::calculateFacetFacetsEdges(), triSurfacePartitioner::calculatePatchPatches(), triSurfacePartitioner::calculatePatchToEdgeGroups(), edgeExtractor::checkConcaveEdgeCells(), Foam::triSurfaceChecks::checkDisconnectedParts(), Foam::triSurfaceChecks::checkForHoles(), Foam::triSurfaceChecks::checkForNonManifoldEdges(), triSurfaceClassifyEdges::checkOrientation(), Foam::triSurfaceChecks::checkOrientation(), Foam::triSurfaceChecks::checkSurfaceManifolds(), triSurfaceClassifyEdges::classifyEdgesTypes(), triSurfacePatchManipulator::createPatches(), triSurfaceDetectFeatureEdges::detectFeatureEdgesAngleCriterion(), and triSurfaceRemoveFacets::removeFacets().
|
inline |
return point-edges addressing
Definition at line 115 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculatePointEdges(), Foam::FatalError, FatalErrorIn, and triSurfAddressing::pointEdgesPtr_.
Referenced by triSurfacePatchManipulator::allocateFeatureEdges(), triSurfaceCurvatureEstimator::calculateEdgeCurvature(), triSurfacePartitioner::calculateEdgeGroups(), triSurfacePartitioner::calculateEdgeGroupsToCorners(), triSurfaceClassifyEdges::classifyEdgesTypes(), edgeExtractor::projectDeterminedFeatureVertices(), and triSurfaceRemoveFacets::removeFacets().
|
inline |
return facet-facets addressing
Definition at line 133 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateFacetFacetsEdges(), triSurfAddressing::facetFacetsEdgesPtr_, Foam::FatalError, and FatalErrorIn.
|
inline |
return point normals
Definition at line 151 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculatePointNormals(), Foam::FatalError, FatalErrorIn, and triSurfAddressing::pointNormalsPtr_.
|
inline |
return normals of facets
Definition at line 170 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateFacetNormals(), triSurfAddressing::facetNormalsPtr_, Foam::FatalError, and FatalErrorIn.
Referenced by triSurfaceImportSurfaceAsSubset::addSurfaceAsSubset(), triSurfAddressing::calculatePointNormals(), triSurface2DCheck::createCovarianceMatrix(), triSurface2DCheck::createSubsets(), and triSurfaceDetectFeatureEdges::detectFeatureEdgesAngleCriterion().
|
inline |
return centres of facets
Definition at line 189 of file triSurfAddressingI.H.
References Foam::abort(), triSurfAddressing::calculateFacetCentres(), triSurfAddressing::facetCentresPtr_, Foam::FatalError, and FatalErrorIn.
Referenced by triSurfaceImportSurfaceAsSubset::addSurfaceAsSubset().
void clearAddressing | ( | ) |
delete all data
Definition at line 340 of file triSurfAddressing.C.
References Foam::deleteDemandDrivenData(), triSurfAddressing::edgeFacetsPtr_, triSurfAddressing::edgesPtr_, triSurfAddressing::facetEdgesPtr_, triSurfAddressing::facetFacetsEdgesPtr_, triSurfAddressing::pointEdgesPtr_, and triSurfAddressing::pointFacetsPtr_.
Referenced by triSurfaceCleanupDuplicateTriangles::checkDuplicateTriangles(), partTriMesh::createBufferLayers(), triSurfaceCleanupDuplicates::mergeDuplicatePoints(), and triSurfAddressing::~triSurfAddressing().
void clearGeometry | ( | ) |
delete geometry data
Definition at line 350 of file triSurfAddressing.C.
References Foam::deleteDemandDrivenData(), triSurfAddressing::facetCentresPtr_, triSurfAddressing::facetNormalsPtr_, and triSurfAddressing::pointNormalsPtr_.
Referenced by triSurfaceCleanupDuplicateTriangles::checkDuplicateTriangles(), triSurfaceCleanupDuplicates::mergeDuplicatePoints(), and triSurfAddressing::~triSurfAddressing().
|
private |
const reference to the points
Definition at line 56 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateFacetCentres(), triSurfAddressing::calculateFacetEdges(), triSurfAddressing::calculateFacetNormals(), and triSurfAddressing::calculatePointEdges().
|
private |
const reference to the facets
Definition at line 60 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateEdges(), triSurfAddressing::calculateFacetCentres(), triSurfAddressing::calculateFacetEdges(), triSurfAddressing::calculateFacetFacetsEdges(), triSurfAddressing::calculateFacetNormals(), and triSurfAddressing::calculatePointFacets().
|
mutableprivate |
facets connected to a point
Definition at line 63 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculatePointFacets(), triSurfAddressing::clearAddressing(), and triSurfAddressing::pointFacets().
|
mutableprivate |
edges in the triangulation
Definition at line 66 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateEdges(), triSurfAddressing::clearAddressing(), and triSurfAddressing::edges().
|
mutableprivate |
labels of edges in the triangles
Definition at line 69 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateFacetEdges(), triSurfAddressing::clearAddressing(), and triSurfAddressing::facetEdges().
|
mutableprivate |
labels of triangles connected to an edge
Definition at line 72 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateEdgeFacets(), triSurfAddressing::clearAddressing(), and triSurfAddressing::edgeFacets().
|
mutableprivate |
labels of edges connected to a point
Definition at line 75 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculatePointEdges(), triSurfAddressing::clearAddressing(), and triSurfAddressing::pointEdges().
|
mutableprivate |
facets connected tp a facet via edges
Definition at line 78 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateFacetFacetsEdges(), triSurfAddressing::clearAddressing(), and triSurfAddressing::facetFacets().
|
mutableprivate |
point normals
Definition at line 82 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculatePointNormals(), triSurfAddressing::clearGeometry(), and triSurfAddressing::pointNormals().
|
mutableprivate |
face normals
Definition at line 85 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateFacetNormals(), triSurfAddressing::clearGeometry(), and triSurfAddressing::facetNormals().
|
mutableprivate |
face centres
Definition at line 88 of file triSurfAddressing.H.
Referenced by triSurfAddressing::calculateFacetCentres(), triSurfAddressing::clearGeometry(), and triSurfAddressing::facetCentres().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.