48 label oldCelli = refCell.
cellNo();
50 label newCelli = map[oldCelli];
74 label newMaster = map[iter.key()];
80 newSlave = map[iter.val()];
83 if ((newMaster != iter.key()) || (newSlave != iter.val()))
98 label newMaster = map[iter.key()];
102 if (iter.val() != -1)
104 newSlave = map[iter.val()];
110 <<
"master cell:" << iter.key()
111 <<
" has disappeared" <<
endl;
115 newCellPairs.insert(newMaster, newSlave);
119 cellPairs = newCellPairs;
133 bool changed =
false;
135 for (
const label celli :
cells)
137 const label newCelli = map[celli];
139 if (newCelli != celli)
152 for (
const label celli :
cells)
154 const label newCelli = map[celli];
158 newCells.insert(newCelli);
171 const primitiveMesh&
mesh,
182 return weight*
pts[
e.end()] + (1-weight)*
pts[
e.start()];
193 const primitiveMesh&
mesh,
198 if (!isEdge(
mesh, cut0) && !isEdge(
mesh, cut1))
203 getVertex(
mesh, cut0),
204 getVertex(
mesh, cut1)
227 os <<
"edge:" << edgeI <<
e <<
' ' << coord(
cut, weight);
231 label vertI = getVertex(
cut);
233 os <<
"vertex:" << vertI <<
' ' <<
coord(
cut, weight);
252 writeCut(
os, cuts[cutI], weights[cutI]);
bool insert(const Key &key)
Insert a new entry, not overwriting existing entries.
bool insert(const Key &key, const T &obj)
Copy insert a new entry, not overwriting existing entries.
label size() const noexcept
The number of elements in table.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
void setSize(label n)
Alias for resize().
A HashTable to objects of type <T> with a label key.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
void size(const label n)
Older name for setAddressableSize.
Ostream & writeCuts(Ostream &os, const labelList &, const scalarField &) const
Write cut descriptions to Ostream.
static point coord(const primitiveMesh &, const label cut, const scalar weight)
Return coordinate of cut (uses weight if edgeCut).
const polyMesh & mesh() const
static bool isEdge(const primitiveMesh &mesh, const label eVert)
Is eVert an edge?
static void updateLabels(const labelList &map, List< refineCell > &)
Update refine list from map. Used to update cell/face labels.
Ostream & writeCut(Ostream &os, const label cut, const scalar) const
Write cut description to Ostream.
static label cutPairToEdge(const primitiveMesh &, const label cut0, const label cut1)
Find mesh edge (or -1) between two cuts.
static label getVertex(const primitiveMesh &mesh, const label eVert)
Convert eVert to vertex label.
An edge is a list of two vertex labels. This can correspond to a directed graph edge or an edge on a ...
Cell-face mesh analysis engine.
const edgeList & edges() const
Return mesh edges. Uses calcEdges.
Container with cells to refine. Refinement given as single direction.
const vector & direction() const
Patchify triangles based on orientation w.r.t other (triangulated or triangulatable) surfaces.
OBJstream os(runTime.globalPath()/outputName)
#define WarningInFunction
Report a warning using Foam::Warning.
List< label > labelList
A List of labels.
HashSet< label, Hash< label > > labelHashSet
A HashSet of labels, uses label hasher.
static label getEdge(List< DynamicList< label > > &pe, DynamicList< edge > &es, const label pointi, const label nextPointi)
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Ostream & endl(Ostream &os)
Add newline and flush stream.
vector point
Point is a vector.
vectorField pointField
pointField is a vectorField.
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIters(container, iter)
Iterate across all elements of the container object with const access.