48 vertexValue[i] = v[labels[i]];
56 bool allPositive =
true;
57 bool allNegative =
true;
61 if (vertexValue[vI] > 0)
93 label nNewFacePoints = 0;
95 for (
label vI = 0; vI < size() - 1; vI++)
97 if (vertexValue[vI] <= 0)
100 newFacePoints[nNewFacePoints] = meshPoints[faceLabels[vI]];
106 (vertexValue[vI] > 0 && vertexValue[vI + 1] < 0)
107 || (vertexValue[vI] < 0 && vertexValue[vI + 1] > 0)
112 meshPoints[faceLabels[vI]]
113 + vertexValue[vI]/(vertexValue[vI + 1] - vertexValue[vI])
114 *(meshPoints[faceLabels[vI]] - meshPoints[faceLabels[vI + 1]]);
122 if (vertexValue[size() - 1] <= 0)
125 newFacePoints[nNewFacePoints] = meshPoints[faceLabels[size() - 1]];
131 (vertexValue[size() - 1] > 0 && vertexValue[0] < 0)
132 || (vertexValue[size() - 1] < 0 && vertexValue[0] > 0)
137 meshPoints[faceLabels[size() - 1]]
138 + vertexValue[size() - 1]/(vertexValue[0] - vertexValue[size() - 1])
139 *(meshPoints[faceLabels[size() - 1]] - meshPoints[faceLabels[0]]);
145 newFacePoints.setSize(nNewFacePoints);
156 return face(sfl).
mag(newFacePoints)/(
mag(meshPoints) + VSMALL);