38 void Foam::triSurface::calcSortedEdgeFaces()
const
40 if (sortedEdgeFacesPtr_)
43 <<
"sortedEdgeFacesPtr_ already set"
56 void Foam::triSurface::calcEdgeOwner()
const
61 <<
"edgeOwnerPtr_ already set"
71 const edge&
e = edges()[edgeI];
73 const labelList& myFaces = edgeFaces()[edgeI];
75 if (myFaces.size() == 1)
77 edgeOwner[edgeI] = myFaces[0];
83 edgeOwner[edgeI] = -1;
87 const labelledTri&
f = localFaces()[myFaces[i]];
91 ((
f[0] ==
e.start()) && (
f[1] ==
e.end()))
92 || ((
f[1] ==
e.start()) && (
f[2] ==
e.end()))
93 || ((
f[2] ==
e.start()) && (
f[0] ==
e.end()))
96 edgeOwner[edgeI] = myFaces[i];
102 if (edgeOwner[edgeI] == -1)
105 <<
"Edge " << edgeI <<
" vertices:" <<
e
106 <<
" is used by faces " << myFaces
108 << UIndirectList<labelledTri>(localFaces(), myFaces)()
109 <<
" none of which use the edge vertices in the same order"
#define forAll(list, i)
Loop across all elements in list.
const labelListList & edgeFaces() const
Return edge-face addressing.
const labelListList & sortedEdgeFaces() const
Return edge-face addressing sorted (for edges with more than.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
List< label > labelList
A List of labels.
errorManip< error > abort(error &err)
List< labelList > labelListList
A List of labelList.