surfaceFeatureExtract: Refactoring surface closeness functions
This commit is contained in:
@ -31,6 +31,7 @@ Description
|
||||
|
||||
#include "surfaceFeatures.H"
|
||||
#include "extendedFeatureEdgeMesh.H"
|
||||
#include "triSurfaceMesh.H"
|
||||
#include "triSurfaceFields.H"
|
||||
#include "pointIndexHitList.H"
|
||||
#include "plane.H"
|
||||
@ -61,6 +62,39 @@ namespace Foam
|
||||
List<surfaceFeatures::edgeStatus>& edgeStat
|
||||
);
|
||||
|
||||
//- Divide into multiple normal bins
|
||||
// - return REGION if != 2 normals
|
||||
// - return REGION if 2 normals that make feature angle
|
||||
// - otherwise return NONE and set normals,bins
|
||||
surfaceFeatures::edgeStatus checkNonManifoldEdge
|
||||
(
|
||||
const triSurface& surf,
|
||||
const scalar tol,
|
||||
const scalar includedAngle,
|
||||
const label edgei
|
||||
);
|
||||
|
||||
void deleteNonManifoldEdges
|
||||
(
|
||||
const triSurface& surf,
|
||||
const scalar tol,
|
||||
const scalar includedAngle,
|
||||
List<surfaceFeatures::edgeStatus>& edgeStat
|
||||
);
|
||||
|
||||
void writeStats(const extendedFeatureEdgeMesh& fem, Ostream& os);
|
||||
|
||||
|
||||
void drawHitProblem
|
||||
(
|
||||
const label fi,
|
||||
const triSurface& surf,
|
||||
const point& start,
|
||||
const point& p,
|
||||
const point& end,
|
||||
const pointIndexHitList& hitInfo
|
||||
);
|
||||
|
||||
void processHit
|
||||
(
|
||||
scalar& internalCloseness,
|
||||
@ -75,53 +109,15 @@ namespace Foam
|
||||
const pointIndexHitList& hitInfo
|
||||
);
|
||||
|
||||
void drawHitProblem
|
||||
Pair<tmp<triSurfaceScalarField>> extractCloseness
|
||||
(
|
||||
const label fi,
|
||||
const triSurface& surf,
|
||||
const point& start,
|
||||
const point& p,
|
||||
const point& end,
|
||||
const pointIndexHitList& hitInfo
|
||||
const triSurfaceMesh& surf
|
||||
);
|
||||
|
||||
//- Unmark non-manifold edges if individual triangles are not features
|
||||
void unmarkBaffles
|
||||
Pair<tmp<triSurfacePointScalarField>> extractPointCloseness
|
||||
(
|
||||
const triSurface& surf,
|
||||
const scalar includedAngle,
|
||||
List<surfaceFeatures::edgeStatus>& edgeStat
|
||||
const triSurfaceMesh& surf
|
||||
);
|
||||
|
||||
//- Divide into multiple normal bins
|
||||
// - return REGION if != 2 normals
|
||||
// - return REGION if 2 normals that make feature angle
|
||||
// - otherwise return NONE and set normals,bins
|
||||
surfaceFeatures::edgeStatus checkFlatRegionEdge
|
||||
(
|
||||
const triSurface& surf,
|
||||
const scalar tol,
|
||||
const scalar includedAngle,
|
||||
const label edgeI
|
||||
);
|
||||
|
||||
void extractCloseness
|
||||
(
|
||||
const fileName &sFeatFileName,
|
||||
const Time& runTime,
|
||||
const triSurface &surf,
|
||||
const bool writeVTK
|
||||
);
|
||||
|
||||
void extractPointCloseness
|
||||
(
|
||||
const fileName &sFeatFileName,
|
||||
const Time& runTime,
|
||||
const triSurface &surf,
|
||||
const bool writeVTK
|
||||
);
|
||||
|
||||
void writeStats(const extendedFeatureEdgeMesh& fem, Ostream& os);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user