33template<
class FaceList,
class Po
intField>
54 const labelList& pEdges = pointEdges[pointi];
56 label nPointEdges = pEdges.
size();
58 label edgeI = pEdges[0];
60 label prevFacei = edgeFaces[edgeI][0];
65 label nVisitedEdges = 0;
72 const labelList& eFaces = edgeFaces[edgeI];
74 if (eFaces.
size() != 2)
79 label facei = eFaces[0];
80 if (facei == prevFacei)
86 const labelList& fEdges = faceEdges[facei];
90 const label nextEdgeI = fEdges[feI];
91 const edge& nextEdge = edges[nextEdgeI];
96 && (nextEdge.
start() == pointi || nextEdge.
end() == pointi)
107 if (nVisitedEdges > nPointEdges)
110 <<
"Unable to order pointEdges as the face connections "
111 <<
"are not circular" <<
nl
112 <<
" Original pointEdges = " << pEdges <<
nl
113 <<
" New pointEdges = " << newEdgeList
116 newEdgeList = pEdges;
121 }
while (edgeI != pEdges[0]);
123 if (newEdgeList.
size() == nPointEdges)
127 if (!newEdgeList.
found(pEdges[eI]))
130 <<
"Cannot find all original edges in the new list"
132 <<
" Original pointEdges = " << pEdges <<
nl
133 <<
" New pointEdges = " << newEdgeList
136 newEdgeList = pEdges;
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
void clear() noexcept
Clear the addressed list, i.e. set the size to zero.
void append(const T &val)
Copy append an element to the end of this list.
void setCapacity(const label len)
Alter the size of the underlying storage.
A list of faces which address into the list of points.
bool found(const T &val, label pos=0) const
True if the value if found in the list.
void size(const label n)
Older name for setAddressableSize.
An edge is a list of two point labels. The functionality it provides supports the discretisation on a...
label end() const
Return end (last/second) vertex label.
label start() const
Return start (first) vertex label.
#define WarningInFunction
Report a warning using Foam::Warning.
Ostream & endl(Ostream &os)
Add newline and flush stream.
constexpr char nl
The newline '\n' character (0x0a)
#define forAll(list, i)
Loop across all elements in list.