mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: surfaceFeatureExtract: adding of extendedFeatureEdgeMeshes
This commit is contained in:
@ -472,6 +472,33 @@ void unmarkBaffles
|
||||
}
|
||||
|
||||
|
||||
void writeStats(const extendedFeatureEdgeMesh& fem, Ostream& os)
|
||||
{
|
||||
os << " points : " << fem.points().size() << nl
|
||||
<< " of which" << nl
|
||||
<< " convex : "
|
||||
<< fem.concaveStart() << nl
|
||||
<< " concave : "
|
||||
<< (fem.mixedStart()-fem.concaveStart()) << nl
|
||||
<< " mixed : "
|
||||
<< (fem.nonFeatureStart()-fem.mixedStart()) << nl
|
||||
<< " non-feature : "
|
||||
<< (fem.points().size()-fem.nonFeatureStart()) << nl
|
||||
<< " edges : " << fem.edges().size() << nl
|
||||
<< " of which" << nl
|
||||
<< " external edges : "
|
||||
<< fem.internalStart() << nl
|
||||
<< " internal edges : "
|
||||
<< (fem.flatStart()- fem.internalStart()) << nl
|
||||
<< " flat edges : "
|
||||
<< (fem.openStart()- fem.flatStart()) << nl
|
||||
<< " open edges : "
|
||||
<< (fem.multipleStart()- fem.openStart()) << nl
|
||||
<< " multiply connected : "
|
||||
<< (fem.edges().size()- fem.multipleStart()) << nl;
|
||||
}
|
||||
|
||||
|
||||
// Main program:
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
@ -746,16 +773,6 @@ int main(int argc, char *argv[])
|
||||
// newSet.writeObj("final");
|
||||
//}
|
||||
|
||||
Info<< nl
|
||||
<< "Final feature set after trimming and subsetting:" << nl
|
||||
<< " feature points : " << newSet.featurePoints().size() << nl
|
||||
<< " feature edges : " << newSet.featureEdges().size() << nl
|
||||
<< " of which" << nl
|
||||
<< " region edges : " << newSet.nRegionEdges() << nl
|
||||
<< " external edges : " << newSet.nExternalEdges() << nl
|
||||
<< " internal edges : " << newSet.nInternalEdges() << nl
|
||||
<< endl;
|
||||
|
||||
// Extracting and writing a extendedFeatureEdgeMesh
|
||||
extendedFeatureEdgeMesh feMesh
|
||||
(
|
||||
@ -764,6 +781,36 @@ int main(int argc, char *argv[])
|
||||
sFeatFileName + ".extendedFeatureEdgeMesh"
|
||||
);
|
||||
|
||||
|
||||
if (surfaceDict.isDict("addFeatures"))
|
||||
{
|
||||
const word addFeName = surfaceDict.subDict("addFeatures")["name"];
|
||||
Info<< "Adding (without merging) features from " << addFeName
|
||||
<< nl << endl;
|
||||
|
||||
extendedFeatureEdgeMesh addFeMesh
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
addFeName,
|
||||
runTime.time().constant(),
|
||||
"extendedFeatureEdgeMesh",
|
||||
runTime.time(),
|
||||
IOobject::MUST_READ,
|
||||
IOobject::NO_WRITE
|
||||
)
|
||||
);
|
||||
Info<< "Read " << addFeMesh.name() << nl;
|
||||
writeStats(addFeMesh, Info);
|
||||
|
||||
feMesh.add(addFeMesh);
|
||||
}
|
||||
|
||||
|
||||
Info<< nl
|
||||
<< "Final feature set:" << nl;
|
||||
writeStats(feMesh, Info);
|
||||
|
||||
Info<< nl << "Writing extendedFeatureEdgeMesh to "
|
||||
<< feMesh.objectPath() << endl;
|
||||
|
||||
|
||||
@ -70,6 +70,12 @@ surface2.nas
|
||||
manifoldEdges no;
|
||||
}
|
||||
|
||||
addFeatures
|
||||
{
|
||||
// Add (without merging) another extendedFeatureEdgeMesh
|
||||
name axZ.extendedFeatureEdgeMesh;
|
||||
}
|
||||
|
||||
// Output the curvature of the surface
|
||||
curvature no;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user