MCPcopy Create free account
hub / github.com/OpenFOAM/OpenFOAM-dev / writeVTK

Function writeVTK

applications/utilities/mesh/manipulation/setSet/setSet.C:72–182  ·  view source on GitHub ↗

Write set to VTK readable files

Source from the content-addressed store, hash-verified

70
71// Write set to VTK readable files
72void writeVTK
73(
74 const polyMesh& mesh,
75 const topoSet& currentSet,
76 const fileName& vtkName
77)
78{
79 if (isA<faceSet>(currentSet))
80 {
81 // Faces of set with OpenFOAM faceID as value
82
83 faceList setFaces(currentSet.size());
84 labelList faceValues(currentSet.size());
85 label setFacei = 0;
86
87 forAllConstIter(topoSet, currentSet, iter)
88 {
89 setFaces[setFacei] = mesh.faces()[iter.key()];
90 faceValues[setFacei] = iter.key();
91 setFacei++;
92 }
93
94 primitiveFacePatch fp(setFaces, mesh.points());
95
96 writePatch
97 (
98 true,
99 currentSet.name(),
100 fp,
101 "faceID",
102 faceValues,
103 mesh.time().path()/vtkName
104 );
105 }
106 else if (isA<cellSet>(currentSet))
107 {
108 // External faces of cellset with OpenFOAM cellID as value
109
110 Map<label> cellFaces(currentSet.size());
111
112 forAllConstIter(cellSet, currentSet, iter)
113 {
114 label celli = iter.key();
115
116 const cell& cFaces = mesh.cells()[celli];
117
118 forAll(cFaces, i)
119 {
120 label facei = cFaces[i];
121
122 if (mesh.isInternalFace(facei))
123 {
124 label otherCelli = mesh.faceOwner()[facei];
125
126 if (otherCelli == celli)
127 {
128 otherCelli = mesh.faceNeighbour()[facei];
129 }

Callers 1

doCommandFunction · 0.70

Calls 14

timeMethod · 0.80
isInternalFaceMethod · 0.80
writePatchFunction · 0.70
writePointSetFunction · 0.70
forAllConstIterFunction · 0.50
forAllFunction · 0.50
facesMethod · 0.45
keyMethod · 0.45
nameMethod · 0.45
pathMethod · 0.45
sizeMethod · 0.45
foundMethod · 0.45

Tested by

no test coverage detected