Low-level components common to various iso-surface algorithms. More...
Public Types | |
enum | cutType : uint8_t { NOTCUT = 0 , CUT = 0x1 , TETCUT = 0x2 , SPHERE = 0x4 , ANYCUT = 0xF , UNVISITED = 0x10 , BLOCKED = 0x20 , SPECIAL = 0xF0 } |
The type of cell/face cuts. More... | |
enum | algorithmType |
The algorithm types. More... | |
enum class | filterType |
The filtering (regularization) to apply. More... | |
![]() | |
typedef face | face_type |
The face type (same as the underlying PrimitivePatch) More... | |
typedef point | point_type |
The point type (same as the underlying PrimitivePatch) More... | |
![]() | |
enum | surfaceTopo { MANIFOLD , OPEN , ILLEGAL } |
Enumeration defining the surface type. Used in check routines. More... | |
typedef std::remove_reference< FaceList >::type::value_type | face_type |
The face type. More... | |
typedef std::remove_reference< PointField >::type::value_type | point_type |
The point type. More... | |
typedef FaceList | FaceListType |
The face list type. More... | |
typedef PointField | PointFieldType |
The point field type. More... | |
typedef face_type | FaceType |
Deprecated(2020-03) prefer face_type typedef. More... | |
![]() | |
enum | algorithmType : uint8_t { ALGO_DEFAULT = 0 , ALGO_TOPO , ALGO_CELL , ALGO_POINT } |
The algorithm types. More... | |
enum class | filterType : uint8_t { NONE = 0 , CELL , DIAGCELL , NONMANIFOLD , PARTIAL = CELL , FULL = DIAGCELL , CLEAN = NONMANIFOLD } |
The filtering (regularization) to apply. More... | |
Public Member Functions | |
isoSurfaceBase (const polyMesh &mesh, const scalarField &cellValues, const scalarField &pointValues, const scalar iso, const isoSurfaceParams ¶ms=isoSurfaceParams()) | |
Construct with mesh, cell/point values and iso-value. More... | |
const polyMesh & | mesh () const noexcept |
The mesh for which the iso-surface is associated. More... | |
const scalarField & | cellValues () const noexcept |
The mesh cell values used for creating the iso-surface. More... | |
const scalarField & | pointValues () const noexcept |
The mesh point values used for creating the iso-surface. More... | |
scalar | isoValue () const noexcept |
The iso-value associated with the surface. More... | |
const labelList & | meshCells () const noexcept |
For each face, the original cell in mesh. More... | |
labelList & | meshCells () noexcept |
For each face, the original cell in mesh. More... | |
label | blockCells (UList< cutType > &cuts, const bitSet &ignoreCells) const |
Mark ignoreCells as BLOCKED. More... | |
label | blockCells (UList< cutType > &cuts, const boundBox &bb, const volumeType::type volType) const |
Mark cells inside/outside a (valid) bound box as BLOCKED. More... | |
void | ignoreCyclics () |
Set ignoreBoundaryFaces to ignore cyclics (cyclicACMI) More... | |
label | calcCellCuts (List< cutType > &cuts) const |
Populate a list of candidate cell cuts using getCellCutType() More... | |
cutType | getFaceCutType (const label facei) const |
Determine face cut for an individual face. More... | |
cutType | getCellCutType (const label celli) const |
virtual tmp< Field< scalar > > | interpolate (const VolumeField< scalar > &cellValues, const Field< scalar > &pointValues) const |
interpolate scalar cellValues, pointValues on iso-surface More... | |
virtual tmp< Field< vector > > | interpolate (const VolumeField< vector > &cellValues, const Field< vector > &pointValues) const |
interpolate vector cellValues, pointValues on iso-surface More... | |
virtual tmp< Field< sphericalTensor > > | interpolate (const VolumeField< sphericalTensor > &cellValues, const Field< sphericalTensor > &pointValues) const |
interpolate sphericalTensor cellValues, pointValues on iso-surface More... | |
virtual tmp< Field< symmTensor > > | interpolate (const VolumeField< symmTensor > &cellValues, const Field< symmTensor > &pointValues) const |
interpolate symmTensor cellValues, pointValues on iso-surface More... | |
virtual tmp< Field< tensor > > | interpolate (const VolumeField< tensor > &cellValues, const Field< tensor > &pointValues) const |
interpolate tensor cellValues, pointValues on iso-surface More... | |
![]() | |
MeshedSurface () | |
Default construct, an empty surface. More... | |
MeshedSurface (const MeshedSurface &surf) | |
Copy construct. More... | |
MeshedSurface (const UnsortedMeshedSurface< face > &surf) | |
Copy construct from an UnsortedMeshedSurface. More... | |
MeshedSurface (MeshedSurface &&surf) | |
Move construct. More... | |
MeshedSurface (UnsortedMeshedSurface< face > &&surf) | |
Move construct from an UnsortedMeshedSurface. More... | |
MeshedSurface (const pointField &pointLst, const UList< face > &faceLst, const UList< surfZone > &zoneLst) | |
Copy construct from components (points, faces, zones). More... | |
MeshedSurface (pointField &&pointLst, List< face > &&faceLst, const UList< surfZone > &zoneLst) | |
Move construct from components (points, faces). More... | |
MeshedSurface (const pointField &pointLst, const UList< face > &faceLst, const labelUList &zoneSizes=labelUList(), const UList< word > &zoneNames=UList< word >()) | |
Copy construct from components (points, faces). More... | |
MeshedSurface (pointField &&pointLst, List< face > &&faceLst, const labelUList &zoneSizes=labelUList(), const UList< word > &zoneNames=UList< word >()) | |
Move construct from components (points, faces). More... | |
MeshedSurface (const polyBoundaryMesh &bMesh, const bool globalPoints=false) | |
Construct from a boundary mesh with local points/faces. More... | |
MeshedSurface (const surfMesh &mesh) | |
Construct from a surfMesh. More... | |
MeshedSurface (const fileName &name) | |
Construct from file name (uses extension to determine type) More... | |
MeshedSurface (const fileName &name, const word &fileType) | |
Construct from file name and given file type. More... | |
MeshedSurface (Istream &is) | |
Construct from Istream. More... | |
MeshedSurface (const Time &runTime) | |
Construct from database (as surfMesh) with default name. More... | |
MeshedSurface (const Time &runTime, const word &surfName) | |
Construct from database (as surfMesh) with given surface name. More... | |
MeshedSurface (const IOobject &io, const dictionary &dict, const bool isGlobal=true) | |
Read construct using IO to find the file location. More... | |
MeshedSurface (const MeshedSurface< face > &surf) | |
MeshedSurface (MeshedSurface< face > &&surf) | |
bool | read (const fileName &name, const word &fileType) |
Read from file. Chooses reader based on explicit extension. More... | |
virtual bool | read (const fileName &name) |
Read from file. Chooses reader based on detected extension. More... | |
virtual void | write (const fileName &name, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null) const |
Generic write routine. Chooses writer based on extension. More... | |
virtual void | write (const fileName &name, const word &fileType, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null) const |
Generic write routine for given format type. More... | |
void | write (const Time &runTime, const word &surfName=word::null) const |
Write to database. More... | |
ClassName ("MeshedSurface") | |
Declare type-name (with debug switch) More... | |
declareRunTimeSelectionTable (autoPtr, MeshedSurface, fileExtension,(const fileName &name),(name)) | |
virtual | ~MeshedSurface () |
Destructor. More... | |
declareMemberFunctionSelectionTable (void, UnsortedMeshedSurface, write, fileExtension,(const fileName &name, const MeshedSurface< face > &surf, IOstreamOption streamOpt, const dictionary &options),(name, surf, streamOpt, options)) | |
label | size () const |
The surface size is the number of faces. More... | |
const List< face > & | surfFaces () const |
Return const access to the faces. More... | |
const labelList & | faceIds () const |
Return const access to faces ids. More... | |
const surfZoneList & | surfZones () const |
Const access to the surface zones. More... | |
const vectorField & | Sf () const |
Face area vectors (normals) More... | |
const scalarField & | magSf () const |
Face area magnitudes. More... | |
const vectorField & | Cf () const |
Face centres. More... | |
virtual void | clear () |
Clear all storage. More... | |
virtual void | addZones (const UList< surfZone > &, const bool cullEmpty=false) |
Add surface zones. More... | |
virtual void | addZones (const labelUList &sizes, const UList< word > &names, const bool cullEmpty=false) |
Add surface zones. More... | |
virtual void | addZones (const labelUList &sizes, const bool cullEmpty=false) |
Add surface zones. More... | |
bool | addZonesToFaces () |
Propagate zone information on face regions. More... | |
bool | addZonesToFaces () |
Specialization for labelledTri. More... | |
bool | addZonesToFaces () |
virtual void | removeZones () |
Remove surface zones. More... | |
virtual void | movePoints (const pointField &newPoints) |
Move points. More... | |
virtual void | scalePoints (const scalar scaleFactor) |
Scale points. A non-positive factor is ignored. More... | |
virtual void | cleanup (const bool verbose) |
Remove invalid faces. More... | |
virtual void | compactPoints (labelList &pointMap=const_cast< labelList & >(labelList::null())) |
Remove unused points and renumber faces in local visit order. More... | |
virtual bool | stitchFaces (const scalar tol=SMALL, const bool verbose=false) |
virtual bool | checkFaces (const bool verbose=false) |
virtual label | nTriangles () const |
Count number of triangles. More... | |
virtual label | nTriangles (labelList &faceMap) const |
Count number of triangles, returning a face map of original ids. More... | |
virtual label | triangulate () |
Triangulate in-place, returning the number of triangles added. More... | |
virtual label | triangulate (labelList &faceMap) |
Triangulate in-place, returning the number of triangles added. More... | |
void | subsetMeshMap (const BoolListType &include, labelList &pointMap, labelList &faceMap) const |
Create mappings for a sub-surface. More... | |
MeshedSurface | subsetMesh (const UList< bool > &include, labelList &pointMap, labelList &faceMap) const |
Return a new surface subsetted on the selected faces. More... | |
MeshedSurface | subsetMesh (const bitSet &include, labelList &pointMap, labelList &faceMap) const |
Return a new surface subsetted on the selected faces. More... | |
MeshedSurface | subsetMesh (const UList< bool > &include) const |
Return a new surface subsetted on the selected faces. More... | |
MeshedSurface | subsetMesh (const bitSet &include) const |
Return a new surface subsetted on the selected faces. More... | |
MeshedSurface | subsetMesh (const wordRes &includeNames, const wordRes &excludeNames=wordRes()) const |
Return a new surface subsetted on the selected zone names. More... | |
void | swap (MeshedSurface< face > &surf) |
Swap contents. More... | |
void | transfer (pointField &pointLst, List< face > &faceLst) |
Transfer the components. More... | |
void | transfer (MeshedSurface< face > &surf) |
Transfer the contents of the argument and annul the argument. More... | |
void | transfer (UnsortedMeshedSurface< face > &surf) |
Transfer the contents of the argument and annul the argument. More... | |
autoPtr< MeshedSurface< face > > | releaseGeom () |
Release (clear) geometry and return for reuse. More... | |
void | swapFaces (List< face > &faces) |
Swap the stored faces. Use with caution. More... | |
void | swapPoints (pointField &points) |
Swap the stored points. More... | |
void | writeStats (Ostream &os) const |
void | operator= (const MeshedSurface< face > &surf) |
Copy assignment. More... | |
void | operator= (MeshedSurface< face > &&surf) |
Move assignment. More... | |
operator MeshedSurfaceProxy< face > () const | |
Conversion operator to MeshedSurfaceProxy. More... | |
![]() | |
PrimitivePatch (const FaceList &faces, const PointField &points) | |
Construct from components. More... | |
PrimitivePatch (FaceList &&faces, const PointField &points) | |
Construct from components, transferring faces. More... | |
PrimitivePatch (FaceList &faces, PointField &points, const bool reuse) | |
Construct from components, reuse storage. More... | |
PrimitivePatch (const PrimitivePatch< FaceList, PointField > &pp) | |
Copy construct. More... | |
virtual | ~PrimitivePatch () |
Destructor. More... | |
void | clearOut () |
void | clearGeom () |
void | clearTopology () |
void | clearPatchMeshAddr () |
void | swap (PrimitivePatch &)=delete |
Suppress direct swapping, since storage containers may be const. More... | |
const Field< point_type > & | points () const noexcept |
Return reference to global points. More... | |
label | nFaces () const noexcept |
Number of faces in the patch. More... | |
label | nPoints () const |
Number of points supporting patch faces. More... | |
label | nEdges () const |
Number of edges in patch. More... | |
const edgeList & | edges () const |
Return list of edges, address into LOCAL point list. More... | |
const edgeList::subList | internalEdges () const |
Return sub-list of internal edges, address into LOCAL point list. More... | |
const edgeList::subList | boundaryEdges () const |
Return sub-list of boundary edges, address into LOCAL point list. More... | |
label | nInternalEdges () const |
Number of internal edges. More... | |
label | nBoundaryEdges () const |
Number of boundary edges == (nEdges() - nInternalEdges()) More... | |
bool | isInternalEdge (const label edgei) const |
Is internal edge? More... | |
const labelList & | boundaryPoints () const |
Return list of boundary points, address into LOCAL point list. More... | |
const labelListList & | faceFaces () const |
Return face-face addressing. More... | |
const labelListList & | edgeFaces () const |
Return edge-face addressing. More... | |
const labelListList & | faceEdges () const |
Return face-edge addressing. More... | |
const labelListList & | pointEdges () const |
Return point-edge addressing. More... | |
const labelListList & | pointFaces () const |
Return point-face addressing. More... | |
const List< face_type > & | localFaces () const |
Return patch faces addressing into local point list. More... | |
labelList | boundaryFaces () const |
labelList | uniqBoundaryFaces () const |
const labelList & | meshPoints () const |
Return labelList of mesh points in patch. More... | |
const Map< label > & | meshPointMap () const |
Mesh point map. More... | |
const Field< point_type > & | localPoints () const |
Return pointField of points in patch. More... | |
const labelList & | localPointOrder () const |
Return orders the local points for most efficient search. More... | |
label | whichPoint (const label gp) const |
Given a global point index, return the local point index. More... | |
edge | meshEdge (const label edgei) const |
From patch edge to global edge using meshPoints. More... | |
edge | meshEdge (const edge &e) const |
From patch edge to global edge using meshPoints. More... | |
label | findEdge (const edge &e) const |
labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
label | meshEdge (const label edgei, const edgeList &allEdges, const labelListList &pointEdges) const |
labelList | meshEdges (const labelUList &edgeLabels, const edgeList &allEdges, const labelListList &pointEdges) const |
const Field< point_type > & | faceCentres () const |
Return face centres for patch. More... | |
const Field< point_type > & | faceAreas () const |
Return face area vectors for patch. More... | |
const Field< scalar > & | magFaceAreas () const |
Return face area magnitudes for patch. More... | |
const Field< point_type > & | faceNormals () const |
Return face unit normals for patch. More... | |
const Field< point_type > & | pointNormals () const |
Return point normals for patch. More... | |
bool | hasFaceAreas () const |
bool | hasFaceCentres () const |
bool | hasFaceNormals () const |
bool | hasPointNormals () const |
bool | hasBoundaryPoints () const |
bool | hasEdges () const |
bool | hasFaceFaces () const |
bool | hasEdgeFaces () const |
bool | hasFaceEdges () const |
bool | hasPointEdges () const |
bool | hasPointFaces () const |
bool | hasMeshPointMap () const |
template<class ToPatch > | |
List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< point_type > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< point_type > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
Project vertices of patch onto another patch. More... | |
const labelListList & | edgeLoops () const |
Return list of closed loops of boundary vertices. More... | |
surfaceTopo | surfaceType () const |
Calculate surface type formed by patch. More... | |
bool | checkTopology (const bool report=false, labelHashSet *setPtr=nullptr) const |
Check surface formed by patch for manifoldness (see above). More... | |
bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=nullptr) const |
Checks primitivePatch for faces sharing point but not edge. More... | |
virtual void | movePoints (const Field< point_type > &) |
Correct patch after moving points. More... | |
void | operator= (const PrimitivePatch< FaceList, PointField > &rhs) |
Copy assign faces. Leave points alone (could be a reference). More... | |
void | operator= (PrimitivePatch< FaceList, PointField > &&rhs) |
Move assign faces. Leave points alone (could be a reference). More... | |
label | whichEdge (const edge &e) const |
Identical to findEdge. More... | |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectPoints (const ToPatch &targetPatch, const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
![]() | |
ClassName ("PrimitivePatch") | |
Runtime type information. More... | |
PrimitivePatchBase ()=default | |
Default construct. More... | |
![]() | |
surfaceFormatsCore ()=default | |
Default construct. More... | |
virtual | ~surfaceFormatsCore ()=default |
Destructor. More... | |
![]() | |
isoSurfaceParams (const algorithmType algo=algorithmType::ALGO_DEFAULT, const filterType filter=filterType::DIAGCELL) noexcept | |
Default construct, or with specified algorithm. More... | |
isoSurfaceParams (const dictionary &dict, const isoSurfaceParams ¶ms=isoSurfaceParams()) | |
Default construct, setting parameters from dictionary. More... | |
isoSurfaceParams (const dictionary &dict, const algorithmType algo, const filterType filter=filterType::DIAGCELL) | |
Default construct, setting parameters from dictionary. More... | |
algorithmType | algorithm () const noexcept |
Get current algorithm. More... | |
void | algorithm (algorithmType algo) noexcept |
Set algorithm. More... | |
filterType | filter () const noexcept |
Get current filter type. More... | |
void | filter (filterType fltr) noexcept |
Set filter type. More... | |
bool | snap () const noexcept |
Get point snapping flag. More... | |
void | snap (bool on) noexcept |
Set point snapping flag. More... | |
scalar | mergeTol () const noexcept |
Get current merge tolerance. More... | |
void | mergeTol (const scalar relTol) noexcept |
Set merge tolerance (cell/point algo) More... | |
const boundBox & | getClipBounds () const noexcept |
Get optional clipping bounding box. More... | |
boundBox & | getClipBounds () noexcept |
Access optional clipping bounding box. More... | |
void | setClipBounds (const boundBox &bb) |
Set optional clipping bounding box. More... | |
void | print (Ostream &os) const |
Print information about the settings. More... | |
Static Public Member Functions | |
static autoPtr< isoSurfaceBase > | New (const isoSurfaceParams ¶ms, const volScalarField &cellValues, const scalarField &pointValues, const scalar iso, const bitSet &ignoreCells=bitSet()) |
Create for specified algorithm type. More... | |
static void | resetCuts (UList< cutType > &cuts) |
Restore non-BLOCKED state to an UNVISITED state. More... | |
![]() | |
static void | write (const fileName &name, const MeshedSurface< face > &surf, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null) |
Write to file, selecting writer based on its extension. More... | |
static void | write (const fileName &name, const word &fileType, const MeshedSurface< face > &surf, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null) |
Write to file, selecting writer based on the given extension. More... | |
static wordHashSet | readTypes () |
Known readable file-types, without friends or proxies. More... | |
static wordHashSet | writeTypes () |
Known writable file-types, without friends or proxies. More... | |
static bool | canReadType (const word &fileType, bool verbose=false) |
Can we read this file format? Also checks friend types. More... | |
static bool | canWriteType (const word &fileType, bool verbose=false) |
Can we write this file format? Also checks proxy types. More... | |
static bool | canRead (const fileName &name, bool verbose=false) |
Can we read this file format? More... | |
static autoPtr< MeshedSurface > | New (const fileName &name, const word &fileType, bool mandatory=true) |
Read construct from filename with given file type. More... | |
static autoPtr< MeshedSurface > | New (const fileName &name) |
Read construct from filename (file type implicit from extension) More... | |
![]() | |
static bool | checkSupport (const wordHashSet &available, const word &fileType, const bool verbose=false, const char *functionName=nullptr) |
Verbose checking of fileType in the list of available types. More... | |
static fileName | findFile (const IOobject &io, const bool isGlobal=true) |
static fileName | findFile (const IOobject &io, const dictionary &dict, const bool isGlobal=true) |
![]() | |
static algorithmType | getAlgorithmType (const dictionary &dict, const algorithmType deflt) |
Get 'isoMethod' or 'isoAlgorithm' as enumeration. More... | |
static filterType | getFilterType (const dictionary &dict, const filterType deflt) |
Get 'regularise' as bool or enumeration. More... | |
Protected Types | |
typedef meshedSurface | Mesh |
typedef cutType | cellCutType |
Protected Member Functions | |
template<class Type > | |
tmp< Field< Type > > | interpolateTemplate (const VolumeField< Type > &cellValues, const Field< Type > &pointValues) const |
Dummy templated interpolate method. More... | |
isoSurfaceBase (const isoSurfaceBase &)=delete | |
No copy construct. More... | |
void | operator= (const isoSurfaceBase &)=delete |
No copy assignment. More... | |
![]() | |
void | transcribe (MeshedSurface< face > &surf) |
Transfer points/zones from 'face' to other other shapes. More... | |
void | transcribe (MeshedSurface< face > &surf) |
void | transcribe (MeshedSurface< face > &surf) |
void | transcribe (MeshedSurface< face > &surf) |
void | checkZones (const bool verbose=true) |
Sanity check/resizing on zones. More... | |
pointField & | storedPoints () |
Non-const access to global points. More... | |
List< face > & | storedFaces () |
Non-const access to the faces. More... | |
labelList & | storedFaceIds () |
Non-const access to face ids. More... | |
surfZoneList & | storedZones () |
Non-const access to the zones. More... | |
void | sortFacesAndStore (DynamicList< face > &unsortedFaces, DynamicList< label > &zoneIds, DynamicList< label > &elemIds, bool sorted) |
Sort faces by zones and store sorted faces. More... | |
virtual void | remapFaces (const labelUList &faceMapNewToOld) |
Set new zones from faceMap. More... | |
Static Protected Member Functions | |
static label | countCutType (const UList< cutType > &cuts, const uint8_t maskValue) |
Count the number of cuts matching the mask type. More... | |
![]() | |
static string | getLineNoComment (ISstream &is, const char comment='#') |
Read non-empty and non-comment line. More... | |
template<class Container > | |
static List< surfZone > | oneZone (const Container &container, const word &name="zone0") |
static labelList | getSelectedPatches (const surfZoneList &patches, const wordRes &allow, const wordRes &deny=wordRes()) |
Return ids for zone/patch that match by name. More... | |
static fileName | relativeFilePath (const IOobject &io, const fileName &f, const bool isGlobal=true) |
Return fileName. More... | |
static fileName | checkFile (const IOobject &io, const bool isGlobal=true) |
Return fileName to load IOobject from. More... | |
static fileName | checkFile (const IOobject &io, const dictionary &dict, const bool isGlobal=true) |
Return fileName to load IOobject from. More... | |
Protected Attributes | |
const polyMesh & | mesh_ |
Reference to mesh. More... | |
const scalarField & | cVals_ |
Cell values. More... | |
const scalarField & | pVals_ |
Point values. More... | |
const scalar | iso_ |
Iso value. More... | |
bitSet | ignoreBoundaryFaces_ |
Optional boundary faces to ignore. More... | |
labelList | meshCells_ |
For every face, the original cell in mesh. More... | |
Additional Inherited Members | |
![]() | |
static word | nativeExt |
The file extension corresponding to 'native' surface format. More... | |
![]() | |
static const Enum< algorithmType > | algorithmNames |
Names for the iso-surface algorithms. More... | |
static const Enum< filterType > | filterNames |
Names for the filtering types. More... | |
Low-level components common to various iso-surface algorithms.
Definition at line 66 of file isoSurfaceBase.H.
|
protected |
Definition at line 93 of file isoSurfaceBase.H.
|
protected |
Definition at line 96 of file isoSurfaceBase.H.
enum cutType : uint8_t |
The type of cell/face cuts.
Definition at line 76 of file isoSurfaceBase.H.
enum algorithmType : uint8_t |
The algorithm types.
Definition at line 114 of file isoSurfaceParams.H.
|
strong |
The filtering (regularization) to apply.
Definition at line 123 of file isoSurfaceParams.H.
|
protecteddelete |
No copy construct.
isoSurfaceBase | ( | const polyMesh & | mesh, |
const scalarField & | cellValues, | ||
const scalarField & | pointValues, | ||
const scalar | iso, | ||
const isoSurfaceParams & | params = isoSurfaceParams() |
||
) |
Construct with mesh, cell/point values and iso-value.
Definition at line 77 of file isoSurfaceBase.C.
Count the number of cuts matching the mask type.
Checks as bitmask or as zero.
Definition at line 115 of file isoSurfaceBase.C.
|
inlineprotected |
Dummy templated interpolate method.
Definition at line 139 of file isoSurfaceBase.H.
|
protecteddelete |
No copy assignment.
|
static |
Create for specified algorithm type.
Currently uses hard-code lookups based in isoSurfaceParams
Definition at line 36 of file isoSurfaceBaseNew.C.
References isoSurfaceParams::ALGO_CELL, isoSurfaceParams::ALGO_POINT, isoSurfaceParams::algorithm(), isoSurfaceBase::cellValues(), isoSurfaceBase::pointValues(), and autoPtr< T >::reset().
Referenced by isoSurfacePoint::adaptPatchFields(), and isoSurfaceTopo::interpolateTemplate().
|
inlinenoexcept |
The mesh for which the iso-surface is associated.
Definition at line 194 of file isoSurfaceBase.H.
References isoSurfaceBase::mesh_.
Referenced by isoSurfacePoint::adaptPatchFields(), isoSurfaceCell::isoSurfaceCell(), and isoSurfaceTopo::isoSurfaceTopo().
|
inlinenoexcept |
The mesh cell values used for creating the iso-surface.
Definition at line 200 of file isoSurfaceBase.H.
References isoSurfaceBase::cVals_.
Referenced by isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), and isoSurfaceBase::New().
|
inlinenoexcept |
The mesh point values used for creating the iso-surface.
Definition at line 206 of file isoSurfaceBase.H.
References isoSurfaceBase::pVals_.
Referenced by isoSurfaceCell::isoSurfaceCell(), and isoSurfaceBase::New().
|
inlinenoexcept |
The iso-value associated with the surface.
Definition at line 212 of file isoSurfaceBase.H.
References isoSurfaceBase::iso_.
|
inlinenoexcept |
For each face, the original cell in mesh.
Definition at line 218 of file isoSurfaceBase.H.
References isoSurfaceBase::meshCells_.
|
inlinenoexcept |
For each face, the original cell in mesh.
Definition at line 224 of file isoSurfaceBase.H.
References isoSurfaceBase::meshCells_.
Restore non-BLOCKED state to an UNVISITED state.
Definition at line 135 of file isoSurfaceBase.C.
Mark ignoreCells as BLOCKED.
Definition at line 147 of file isoSurfaceBase.C.
References UList< T >::size().
Referenced by isoSurfaceCell::isoSurfaceCell(), and isoSurfaceTopo::isoSurfaceTopo().
Foam::label blockCells | ( | UList< cutType > & | cuts, |
const boundBox & | bb, | ||
const volumeType::type | volType | ||
) | const |
Mark cells inside/outside a (valid) bound box as BLOCKED.
The volType is INSIDE or OUTSIDE only
Definition at line 170 of file isoSurfaceBase.C.
References boundBox::contains(), forAll, volumeType::INSIDE, volumeType::OUTSIDE, and boundBox::valid().
void ignoreCyclics | ( | ) |
Set ignoreBoundaryFaces to ignore cyclics (cyclicACMI)
Definition at line 99 of file isoSurfaceBase.C.
References polyPatch::boundaryMesh().
Referenced by isoSurfaceTopo::isoSurfaceTopo().
Populate a list of candidate cell cuts using getCellCutType()
Definition at line 208 of file isoSurfaceBase.C.
References forAll, and List< T >::resize().
Referenced by isoSurfaceCell::isoSurfaceCell(), and isoSurfaceTopo::isoSurfaceTopo().
Foam::isoSurfaceBase::cutType getFaceCutType | ( | const label | facei | ) | const |
Determine face cut for an individual face.
Definition at line 234 of file isoSurfaceBase.C.
References Foam::isFaceCut().
Foam::isoSurfaceBase::cutType getCellCutType | ( | const label | celli | ) | const |
Cell cut for an individual cell, with special handling for TETCUT and SPHERE cuts
Definition at line 248 of file isoSurfaceBase.C.
References f(), Foam::isFaceCut(), and tetMatcher::test().
Referenced by distanceSurface::refineBlockedCells().
|
virtual |
interpolate scalar cellValues, pointValues on iso-surface
Reimplemented in isoSurfaceCell, isoSurfacePoint, and isoSurfaceTopo.
|
virtual |
interpolate vector cellValues, pointValues on iso-surface
Reimplemented in isoSurfaceCell, isoSurfacePoint, and isoSurfaceTopo.
|
virtual |
interpolate sphericalTensor cellValues, pointValues on iso-surface
Reimplemented in isoSurfaceCell, isoSurfacePoint, and isoSurfaceTopo.
|
virtual |
interpolate symmTensor cellValues, pointValues on iso-surface
Reimplemented in isoSurfaceCell, isoSurfacePoint, and isoSurfaceTopo.
|
virtual |
interpolate tensor cellValues, pointValues on iso-surface
Reimplemented in isoSurfaceCell, isoSurfacePoint, and isoSurfaceTopo.
|
protected |
Reference to mesh.
Definition at line 102 of file isoSurfaceBase.H.
Referenced by isoSurfaceTopo::interpolateTemplate(), isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), isoSurfaceTopo::isoSurfaceTopo(), and isoSurfaceBase::mesh().
|
protected |
Cell values.
Definition at line 105 of file isoSurfaceBase.H.
Referenced by isoSurfaceBase::cellValues(), isoSurfaceTopo::interpolateTemplate(), isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), and isoSurfaceTopo::isoSurfaceTopo().
|
protected |
Point values.
Definition at line 108 of file isoSurfaceBase.H.
Referenced by isoSurfaceTopo::interpolateTemplate(), isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), isoSurfaceTopo::isoSurfaceTopo(), and isoSurfaceBase::pointValues().
|
protected |
Iso value.
Definition at line 111 of file isoSurfaceBase.H.
Referenced by isoSurfaceTopo::interpolateTemplate(), and isoSurfaceBase::isoValue().
|
protected |
Optional boundary faces to ignore.
Eg, Used to exclude cyclicACMI (since duplicate faces)
Definition at line 118 of file isoSurfaceBase.H.
|
protected |
For every face, the original cell in mesh.
Definition at line 124 of file isoSurfaceBase.H.
Referenced by isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), isoSurfaceTopo::isoSurfaceTopo(), and isoSurfaceBase::meshCells().