153 static label findPartIndex
175 static label firstUnique
185 void writeUncutOBJ(
const fileName&,
const label celli)
const;
206 label edgeVertexToFace
214 label vertexVertexToFace
225 void calcFaceCuts()
const;
245 const label startCut,
247 const label exclude0,
248 const label exclude1,
250 const label otherCut,
260 const label startCut,
262 const label otherCut,
284 const label startCut,
289 label& beforeLastCut,
300 const label startCut,
308 void calcCellLoops(
const labelList& cutCells);
333 bool loopAnchorConsistent
380 bool conservativeValidLoop
402 void setFromCellLoops();
414 void setFromCellLoops
427 void setFromCellCutter
435 void setFromCellCutter
443 void orientPlanesAndLoops();
447 void calcLoopsAndAddressing(
const labelList& cutCells);
560 if (!faceCutsPtr_.
valid())
564 return faceCutsPtr_();
570 return faceSplitCut_;
588 return cellAnchorPoints_;
625 void writeOBJ(
Ostream& os)
const;
const boolList & edgeIsCut() const
Is edge cut.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A class for handling file names.
const labelListList & faceCuts() const
Cuts per existing face (includes those along edge of face)
void operator=(const cellCuts &)=delete
Disallow default bitwise assignment.
ClassName("cellCuts")
Runtime type information.
void flip(const label celli)
Flip loop for celli. Updates anchor points as well.
Abstract base class. Concrete implementations know how to cut a cell (i.e. determine a loop around th...
Description of cuts across cells.
void clearOut()
Clear out demand driven storage.
Combines edge or vertex in single label. Used to specify cuts across cell circumference.
bool valid() const
Return true if the autoPtr valid (ie, the pointer is set)
const polyMesh & mesh() const
An Ostream is an abstract base class for all output systems (streams, files, token lists...
const scalarField & edgeWeight() const
If edge is cut gives weight (ratio between start() and end())
label nLoops() const
Number of valid cell loops.
const boolList & pointIsCut() const
Is mesh point cut.
const Map< edge > & faceSplitCut() const
Gives for split face the two cuts that split the face into two.
const labelListList & cellLoops() const
For each cut cell the cut along the circumference.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Mesh consisting of general polyhedral cells.
cellCuts(const polyMesh &mesh, const labelList &cutCells, const labelList &meshVerts, const labelList &meshEdges, const scalarField &meshEdgeWeights)
Construct from cells to cut and pattern of cuts.
void writeCellOBJ(const fileName &dir, const label celli) const
debugging:Write edges of cell and loop
labelList nonAnchorPoints(const labelList &cellPoints, const labelList &anchorPoints, const labelList &loop) const
Invert anchor point selection.
void flipLoopOnly(const label celli)
Flip loop for celli. Does not update anchors. Use with care.
A HashTable to objects of type <T> with a label key.
const labelListList & cellAnchorPoints() const
For each cut cell the points on the 'anchor' side of the cell.