31 const Foam::label Foam::prismMatcher::vertPerCell = 6;
32 const Foam::label Foam::prismMatcher::facePerCell = 5;
33 const Foam::label Foam::prismMatcher::maxVertPerFace = 4;
66 if (!faceSizeMatch(faces, myFaces))
72 label numVert = calcLocalFaces(faces, myFaces);
74 if (numVert != vertPerCell)
80 calcEdgeAddressing(numVert);
86 vertLabels_.setSize(vertPerCell);
87 faceLabels_.setSize(facePerCell);
98 if (faceSize_[faceI] == 3)
105 const face& face0 = localFaces_[face0I];
106 label face0vert0 = 0;
113 vertLabels_[0] = pointMap_[face0[face0vert0]];
114 faceLabels_[0] = faceMap_[face0I];
125 !(owner[faceMap_[face0I]] == cellI)
127 vertLabels_[1] = pointMap_[face0[face0vert1]];
141 const face& face4 = localFaces_[face4I];
147 if (faceSize_[face4I] != 4)
153 faceLabels_[4] = faceMap_[face4I];
155 label face4vert1 = pointFaceIndex_[face0[face0vert1]][face4I];
167 (owner[faceMap_[face4I]] == cellI)
169 vertLabels_[4] = pointMap_[face4[face4vert4]];
180 (owner[faceMap_[face4I]] == cellI)
182 vertLabels_[3] = pointMap_[face4[face4vert3]];
202 if (faceSize_[face1I] != 3)
215 faceLabels_[1] = faceMap_[face1I];
229 !(owner[faceMap_[face0I]] == cellI)
231 vertLabels_[2] = pointMap_[face0[face0vert2]];
245 faceLabels_[3] = faceMap_[face3I];
246 const face& face3 = localFaces_[face3I];
252 label face3vert2 = pointFaceIndex_[face0[face0vert2]][face3I];
263 (owner[faceMap_[face3I]] == cellI)
265 vertLabels_[5] = pointMap_[face3[face3vert5]];
279 faceLabels_[2] = faceMap_[face2I];
307 if (myFaces.
size() != 5)
317 label size = faces[myFaces[myFaceI]].
size();
332 if ((nTris == 2) && (nQuads == 3))
365 makeIdentity(faces.
size())
389 shape =
cellShape(model(), vertLabels());