MeshedSurface< Face > Class Template Reference

A surface geometry mesh with zone information, not to be confused with the similarly named surfaceMesh, which actually refers to the cell faces of a volume mesh. More...

Inheritance diagram for MeshedSurface< Face >:
[legend]

Public Types

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...
 

Public Member Functions

 ClassName ("MeshedSurface")
 Declare type-name (with debug switch) 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...
 
 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 labelListfaceIds () const
 Return const access to faces ids. More...
 
const surfZoneListsurfZones () const
 Const access to the surface zones. More...
 
const vectorFieldSf () const
 Face area vectors (normals) More...
 
const scalarFieldmagSf () const
 Face area magnitudes. More...
 
const vectorFieldCf () 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...
 
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...
 
template<class BoolListType >
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...
 
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...
 
void writeStats (Ostream &os) const
 
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...
 
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...
 
template<class Face>
 MeshedSurface (const MeshedSurface< Face > &surf)
 
template<class Face>
 MeshedSurface (MeshedSurface< Face > &&surf)
 
template<>
bool addZonesToFaces ()
 Specialization for labelledTri. More...
 
template<>
bool addZonesToFaces ()
 

Static Public Member Functions

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< MeshedSurfaceNew (const fileName &name, const word &fileType, bool mandatory=true)
 Read construct from filename with given file type. More...
 
static autoPtr< MeshedSurfaceNew (const fileName &name)
 Read construct from filename (file type implicit from extension) 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...
 

Protected Member Functions

void transcribe (MeshedSurface< face > &surf)
 Transfer points/zones from 'face' to other other shapes. More...
 
void checkZones (const bool verbose=true)
 Sanity check/resizing on zones. More...
 
pointFieldstoredPoints ()
 Non-const access to global points. More...
 
List< Face > & storedFaces ()
 Non-const access to the faces. More...
 
labelListstoredFaceIds ()
 Non-const access to face ids. More...
 
surfZoneListstoredZones ()
 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...
 
template<>
void transcribe (MeshedSurface< face > &surf)
 
template<>
void transcribe (MeshedSurface< face > &surf)
 
template<>
void transcribe (MeshedSurface< face > &surf)
 

Friends

template<class Face2 >
class MeshedSurface
 
template<class Face2 >
class UnsortedMeshedSurface
 
class surfMesh
 
Istreamoperator>> (Istream &is, MeshedSurface< Face > &surf)
 Read MeshedSurface from Istream. More...
 
Ostreamoperator (Ostream &os, const MeshedSurface< Face > &surf)
 Write MeshedSurface to Ostream. More...
 

Detailed Description

template<class Face>
class Foam::MeshedSurface< Face >

A surface geometry mesh with zone information, not to be confused with the similarly named surfaceMesh, which actually refers to the cell faces of a volume mesh.

A MeshedSurface can have zero or more surface zones (roughly equivalent to faceZones for a polyMesh). If surface zones are defined, they must be contiguous and cover all of the faces.

The MeshedSurface is intended for surfaces from a variety of sources.

  • A set of points and faces without any surface zone information.
  • A set of points and faces with randomly ordered zone information. This could arise, for example, from reading external file formats such as STL, etc.
Source files

Definition at line 80 of file triSurfaceTools.H.

Member Typedef Documentation

◆ face_type

typedef Face face_type

The face type (same as the underlying PrimitivePatch)

Definition at line 208 of file MeshedSurface.H.

◆ point_type

typedef point point_type

The point type (same as the underlying PrimitivePatch)

Definition at line 211 of file MeshedSurface.H.

Constructor & Destructor Documentation

◆ MeshedSurface() [1/19]

Default construct, an empty surface.

Definition at line 183 of file MeshedSurface.C.

◆ MeshedSurface() [2/19]

MeshedSurface ( const MeshedSurface< Face > &  surf)

Copy construct.

◆ MeshedSurface() [3/19]

MeshedSurface ( const UnsortedMeshedSurface< Face > &  surf)

Copy construct from an UnsortedMeshedSurface.

Definition at line 205 of file MeshedSurface.C.

◆ MeshedSurface() [4/19]

MeshedSurface ( MeshedSurface< Face > &&  surf)

Move construct.

◆ MeshedSurface() [5/19]

MeshedSurface ( UnsortedMeshedSurface< Face > &&  surf)

Move construct from an UnsortedMeshedSurface.

Definition at line 260 of file MeshedSurface.C.

◆ MeshedSurface() [6/19]

MeshedSurface ( const pointField pointLst,
const UList< Face > &  faceLst,
const UList< surfZone > &  zoneLst 
)

Copy construct from components (points, faces, zones).

Definition at line 272 of file MeshedSurface.C.

◆ MeshedSurface() [7/19]

MeshedSurface ( pointField &&  pointLst,
List< Face > &&  faceLst,
const UList< surfZone > &  zoneLst 
)

Move construct from components (points, faces).

Zone information is fairly lightweight and is copied.

Definition at line 288 of file MeshedSurface.C.

◆ MeshedSurface() [8/19]

MeshedSurface ( const pointField pointLst,
const UList< Face > &  faceLst,
const labelUList zoneSizes = labelUList(),
const UList< word > &  zoneNames = UList<word>() 
)

Copy construct from components (points, faces).

Use zone information if available

Definition at line 304 of file MeshedSurface.C.

◆ MeshedSurface() [9/19]

MeshedSurface ( pointField &&  pointLst,
List< Face > &&  faceLst,
const labelUList zoneSizes = labelUList(),
const UList< word > &  zoneNames = UList<word>() 
)

Move construct from components (points, faces).

Use zone information if available

Definition at line 331 of file MeshedSurface.C.

◆ MeshedSurface() [10/19]

MeshedSurface ( const polyBoundaryMesh bMesh,
const bool  globalPoints = false 
)

Construct from a boundary mesh with local points/faces.

Definition at line 375 of file MeshedSurface.C.

◆ MeshedSurface() [11/19]

MeshedSurface ( const surfMesh mesh)
explicit

Construct from a surfMesh.

Definition at line 357 of file MeshedSurface.C.

◆ MeshedSurface() [12/19]

MeshedSurface ( const fileName name)
explicit

Construct from file name (uses extension to determine type)

Definition at line 455 of file MeshedSurface.C.

◆ MeshedSurface() [13/19]

MeshedSurface ( const fileName name,
const word fileType 
)
explicit

Construct from file name and given file type.

If the format type is "", uses the file extension.

Definition at line 443 of file MeshedSurface.C.

◆ MeshedSurface() [14/19]

MeshedSurface ( Istream is)
explicit

Construct from Istream.

Definition at line 464 of file MeshedSurface.C.

◆ MeshedSurface() [15/19]

MeshedSurface ( const Time runTime)
explicit

Construct from database (as surfMesh) with default name.

Definition at line 474 of file MeshedSurface.C.

◆ MeshedSurface() [16/19]

MeshedSurface ( const Time runTime,
const word surfName 
)

Construct from database (as surfMesh) with given surface name.

Definition at line 484 of file MeshedSurface.C.

◆ MeshedSurface() [17/19]

MeshedSurface ( const IOobject io,
const dictionary dict,
const bool  isGlobal = true 
)

Read construct using IO to find the file location.

Dictionary may contain the following entries:

  • file = alternative file name (default is dictionary name)
  • fileType = file format (default is from file extension)
  • scale (eg, 0.001: mm to m)
Parameters
isGlobalresolve as a global file

Definition at line 517 of file MeshedSurface.C.

◆ ~MeshedSurface()

~MeshedSurface ( )
virtual

Destructor.

Definition at line 539 of file MeshedSurface.C.

◆ MeshedSurface() [18/19]

MeshedSurface ( const MeshedSurface< Face > &  surf)

Definition at line 193 of file MeshedSurface.C.

◆ MeshedSurface() [19/19]

MeshedSurface ( MeshedSurface< Face > &&  surf)

Definition at line 248 of file MeshedSurface.C.

Member Function Documentation

◆ transcribe() [1/4]

void transcribe ( MeshedSurface< face > &  surf)
protected

Transfer points/zones from 'face' to other other shapes.

Eg, transcribe face to triFace, or face -> labelledTri, including any addZonesToFaces adjustment. No general form, only specializations.

◆ checkZones()

void checkZones ( const bool  verbose = true)
protected

Sanity check/resizing on zones.

Adjust zones so that they cover the number of faces The last zone will be extended as needed

Definition at line 35 of file MeshedSurfaceZones.C.

◆ storedPoints()

pointField& storedPoints ( )
inlineprotected

Non-const access to global points.

Definition at line 167 of file MeshedSurface.H.

Referenced by MeshedSurface< Foam::face >::swap(), MeshedSurface< Foam::face >::transcribe(), surfMesh::transfer(), polySurface::transfer(), and MeshedSurface< Foam::face >::transfer().

Here is the caller graph for this function:

◆ storedFaces()

List<Face>& storedFaces ( )
inlineprotected

Non-const access to the faces.

Definition at line 173 of file MeshedSurface.H.

Referenced by MeshedSurface< Foam::face >::swap(), surfMesh::transfer(), polySurface::transfer(), and MeshedSurface< Foam::face >::transfer().

Here is the caller graph for this function:

◆ storedFaceIds()

labelList& storedFaceIds ( )
inlineprotected

Non-const access to face ids.

Definition at line 179 of file MeshedSurface.H.

Referenced by MeshedSurface< Foam::face >::swap(), and MeshedSurface< Foam::face >::transfer().

Here is the caller graph for this function:

◆ storedZones()

surfZoneList& storedZones ( )
inlineprotected

Non-const access to the zones.

Definition at line 185 of file MeshedSurface.H.

Referenced by MeshedSurface< Foam::face >::swap(), MeshedSurface< Foam::face >::transcribe(), surfMesh::transfer(), and MeshedSurface< Foam::face >::transfer().

Here is the caller graph for this function:

◆ sortFacesAndStore()

void sortFacesAndStore ( DynamicList< Face > &  unsortedFaces,
DynamicList< label > &  zoneIds,
DynamicList< label > &  elemIds,
bool  sorted 
)
protected

Sort faces by zones and store sorted faces.

Definition at line 91 of file MeshedSurfaceZones.C.

◆ remapFaces()

void remapFaces ( const labelUList faceMapNewToOld)
protectedvirtual

Set new zones from faceMap.

Reimplemented in cuttingSurfaceBase.

Definition at line 549 of file MeshedSurface.C.

◆ ClassName()

ClassName ( "MeshedSurface< Face >"  )

Declare type-name (with debug switch)

◆ readTypes()

Foam::wordHashSet readTypes ( )
static

Known readable file-types, without friends or proxies.

Definition at line 45 of file MeshedSurface.C.

◆ writeTypes()

Foam::wordHashSet writeTypes ( )
static

Known writable file-types, without friends or proxies.

Definition at line 52 of file MeshedSurface.C.

◆ canReadType()

bool canReadType ( const word fileType,
bool  verbose = false 
)
static

Can we read this file format? Also checks friend types.

Definition at line 60 of file MeshedSurface.C.

◆ canWriteType()

bool canWriteType ( const word fileType,
bool  verbose = false 
)
static

Can we write this file format? Also checks proxy types.

Definition at line 77 of file MeshedSurface.C.

◆ canRead()

bool canRead ( const fileName name,
bool  verbose = false 
)
static

Can we read this file format?

Definition at line 94 of file MeshedSurface.C.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
MeshedSurface< Face >  ,
fileExtension  ,
(const fileName &name ,
(name  
)

◆ New() [1/2]

Foam::autoPtr< Foam::MeshedSurface< Face > > New ( const fileName name,
const word fileType,
bool  mandatory = true 
)
static

Read construct from filename with given file type.

Note
Use mandatory=false if support for the file type is optional (the file still needs to exist!).

Definition at line 38 of file MeshedSurfaceNew.C.

◆ New() [2/2]

Foam::autoPtr< Foam::MeshedSurface< Face > > New ( const fileName name)
static

Read construct from filename (file type implicit from extension)

Definition at line 118 of file MeshedSurfaceNew.C.

◆ declareMemberFunctionSelectionTable()

declareMemberFunctionSelectionTable ( void  ,
UnsortedMeshedSurface< Face >  ,
write  ,
fileExtension  ,
(const fileName &name, const MeshedSurface< Face > &surf, IOstreamOption streamOpt, const dictionary &options)  ,
(name, surf, streamOpt, options)   
)

◆ write() [1/5]

void write ( const fileName name,
const MeshedSurface< Face > &  surf,
IOstreamOption  streamOpt = IOstreamOption(),
const dictionary options = dictionary::null 
)
static

Write to file, selecting writer based on its extension.

Definition at line 110 of file MeshedSurface.C.

◆ write() [2/5]

void write ( const fileName name,
const word fileType,
const MeshedSurface< Face > &  surf,
IOstreamOption  streamOpt = IOstreamOption(),
const dictionary options = dictionary::null 
)
static

Write to file, selecting writer based on the given extension.

Definition at line 123 of file MeshedSurface.C.

◆ size()

label size ( ) const
inline

The surface size is the number of faces.

Definition at line 407 of file MeshedSurface.H.

Referenced by polySurface::copySurface(), surfMesh::copySurface(), distanceSurface::filterFaceProximity(), surfaceNoise::initialise(), isoSurfaceTopo::isoSurfaceTopo(), UnsortedMeshedSurface< Face >::size(), surfaceNoise::surfaceAverage(), triSurfaceTools::validTri(), GTSsurfaceFormat< Face >::write(), and surfaceNoise::writeSurfaceData().

Here is the caller graph for this function:

◆ surfFaces()

const List<Face>& surfFaces ( ) const
inline

◆ faceIds()

const labelList& faceIds ( ) const
inline

Return const access to faces ids.

If these exist, they are typically arise from reading a mesh format from another CAE software (eg, NASTRAN, STARCD, ...)

Definition at line 421 of file MeshedSurface.H.

Referenced by MeshedSurface< Foam::face >::operator=().

Here is the caller graph for this function:

◆ surfZones()

const surfZoneList& surfZones ( ) const
inline

Const access to the surface zones.

If zones are defined, they must be contiguous and cover the entire surface

Definition at line 429 of file MeshedSurface.H.

Referenced by polySurface::copySurface(), surfMesh::copySurface(), MeshedSurface< Foam::face >::operator=(), polySurface::transfer(), UnsortedMeshedSurface< Face >::transfer(), triSurface::transfer(), UnsortedMeshedSurface< Face >::UnsortedMeshedSurface(), and GTSsurfaceFormat< Face >::write().

Here is the caller graph for this function:

◆ Sf()

const vectorField& Sf ( ) const
inline

Face area vectors (normals)

Definition at line 435 of file MeshedSurface.H.

Referenced by sampledInterface::Sf(), sampledCuttingSurface::Sf(), sampledPlane::Sf(), sampledDistanceSurface::Sf(), sampledCuttingPlane::Sf(), and sampledIsoSurface::Sf().

Here is the caller graph for this function:

◆ magSf()

const scalarField& magSf ( ) const
inline

Face area magnitudes.

Definition at line 441 of file MeshedSurface.H.

Referenced by sampledInterface::magSf(), sampledCuttingSurface::magSf(), sampledPlane::magSf(), sampledDistanceSurface::magSf(), sampledCuttingPlane::magSf(), sampledIsoSurface::magSf(), and surfaceNoise::writeSurfaceData().

Here is the caller graph for this function:

◆ Cf()

const vectorField& Cf ( ) const
inline

Face centres.

Definition at line 447 of file MeshedSurface.H.

Referenced by sampledInterface::Cf(), sampledCuttingSurface::Cf(), sampledPlane::Cf(), sampledDistanceSurface::Cf(), sampledCuttingPlane::Cf(), and sampledIsoSurface::Cf().

Here is the caller graph for this function:

◆ clear()

void clear ( )
virtual

Clear all storage.

Definition at line 598 of file MeshedSurface.C.

Referenced by distanceSurface::createGeometry(), MeshedSurface< Foam::face >::transcribe(), triSurface::transfer(), and MeshedSurface< Foam::face >::transfer().

Here is the caller graph for this function:

◆ addZones() [1/3]

void addZones ( const UList< surfZone > &  srfZones,
const bool  cullEmpty = false 
)
virtual

Add surface zones.

Definition at line 152 of file MeshedSurfaceZones.C.

◆ addZones() [2/3]

void addZones ( const labelUList sizes,
const UList< word > &  names,
const bool  cullEmpty = false 
)
virtual

Add surface zones.

Definition at line 177 of file MeshedSurfaceZones.C.

◆ addZones() [3/3]

void addZones ( const labelUList sizes,
const bool  cullEmpty = false 
)
virtual

Add surface zones.

Definition at line 211 of file MeshedSurfaceZones.C.

◆ addZonesToFaces() [1/3]

bool addZonesToFaces ( )

Propagate zone information on face regions.

Normally a no-op, only used by the labelledTri specialization. Specializations return true, others return false.

Definition at line 243 of file MeshedSurfaceZones.C.

◆ removeZones()

void removeZones ( )
virtual

Remove surface zones.

Definition at line 251 of file MeshedSurfaceZones.C.

◆ movePoints()

void movePoints ( const pointField newPoints)
virtual

Move points.

Definition at line 610 of file MeshedSurface.C.

◆ scalePoints()

void scalePoints ( const scalar  scaleFactor)
virtual

Scale points. A non-positive factor is ignored.

Definition at line 623 of file MeshedSurface.C.

◆ cleanup()

void cleanup ( const bool  verbose)
virtual

Remove invalid faces.

Definition at line 641 of file MeshedSurface.C.

◆ compactPoints()

void compactPoints ( labelList pointMap = const_cast<labelList&>(labelList::null()))
virtual

Remove unused points and renumber faces in local visit order.

Parameters
[out]pointMapfrom new to old points (optional)

Definition at line 652 of file MeshedSurface.C.

◆ stitchFaces()

bool stitchFaces ( const scalar  tol = SMALL,
const bool  verbose = false 
)
virtual

Definition at line 693 of file MeshedSurface.C.

◆ checkFaces()

bool checkFaces ( const bool  verbose = false)
virtual

Definition at line 788 of file MeshedSurface.C.

◆ nTriangles() [1/2]

Foam::label nTriangles ( ) const
virtual

Count number of triangles.

Definition at line 955 of file MeshedSurface.C.

◆ nTriangles() [2/2]

Foam::label nTriangles ( labelList faceMap) const
virtual

Count number of triangles, returning a face map of original ids.

The faceMap is zero-sized when no triangulation would be needed.

Definition at line 971 of file MeshedSurface.C.

◆ triangulate() [1/2]

Foam::label triangulate ( )
virtual

Triangulate in-place, returning the number of triangles added.

Definition at line 1015 of file MeshedSurface.C.

Referenced by MeshedSurface< Foam::face >::transcribe().

Here is the caller graph for this function:

◆ triangulate() [2/2]

Foam::label triangulate ( labelList faceMap)
virtual

Triangulate in-place, returning the number of triangles added.

and setting a map of original face Ids. The faceMap is zero-sized when no triangulation was done.

Definition at line 1034 of file MeshedSurface.C.

◆ subsetMeshMap()

void subsetMeshMap ( const BoolListType &  include,
labelList pointMap,
labelList faceMap 
) const
inline

Create mappings for a sub-surface.

Parameters
[in]includethe faces to select
[out]pointMapfrom new to old localPoints
[out]faceMapfrom new to old localFaces

Definition at line 541 of file MeshedSurface.H.

◆ subsetMesh() [1/5]

Foam::MeshedSurface< Face > subsetMesh ( const UList< bool > &  include,
labelList pointMap,
labelList faceMap 
) const

Return a new surface subsetted on the selected faces.

Parameters
[in]includethe faces to select
[out]pointMapfrom new to old localPoints
[out]faceMapfrom new to old localFaces

Definition at line 1225 of file MeshedSurface.C.

Referenced by distanceSurface::filterFaceProximity().

Here is the caller graph for this function:

◆ subsetMesh() [2/5]

Foam::MeshedSurface< Face > subsetMesh ( const bitSet include,
labelList pointMap,
labelList faceMap 
) const

Return a new surface subsetted on the selected faces.

Parameters
[in]includethe faces to select
[out]pointMapfrom new to old localPoints
[out]faceMapfrom new to old localFaces

Definition at line 1239 of file MeshedSurface.C.

◆ subsetMesh() [3/5]

Foam::MeshedSurface< Face > subsetMesh ( const UList< bool > &  include) const

Return a new surface subsetted on the selected faces.

Parameters
[in]includethe faces to select

Definition at line 1253 of file MeshedSurface.C.

◆ subsetMesh() [4/5]

Foam::MeshedSurface< Face > subsetMesh ( const bitSet include) const

Return a new surface subsetted on the selected faces.

Parameters
[in]includethe faces to select

Definition at line 1265 of file MeshedSurface.C.

◆ subsetMesh() [5/5]

Foam::MeshedSurface< Face > subsetMesh ( const wordRes includeNames,
const wordRes excludeNames = wordRes() 
) const

Return a new surface subsetted on the selected zone names.

Parameters
[in]includeNamessurface zone names to include
[in]excludeNamessurface zone names to exclude
See also
Foam::stringListOps::findMatching for details about matching

Definition at line 1276 of file MeshedSurface.C.

◆ swap()

void swap ( MeshedSurface< Face > &  surf)

Swap contents.

Definition at line 1303 of file MeshedSurface.C.

Referenced by MeshedSurface< Foam::face >::swap().

Here is the caller graph for this function:

◆ transfer() [1/3]

void transfer ( pointField pointLst,
List< Face > &  faceLst 
)

Transfer the components.

Definition at line 1324 of file MeshedSurface.C.

Referenced by distanceSurface::createGeometry(), distanceSurface::filterFaceProximity(), and distanceSurface::filterRegionProximity().

Here is the caller graph for this function:

◆ transfer() [2/3]

void transfer ( MeshedSurface< Face > &  surf)

Transfer the contents of the argument and annul the argument.

Definition at line 1340 of file MeshedSurface.C.

◆ transfer() [3/3]

void transfer ( UnsortedMeshedSurface< Face > &  surf)

Transfer the contents of the argument and annul the argument.

Definition at line 1362 of file MeshedSurface.C.

◆ releaseGeom()

Foam::autoPtr< Foam::MeshedSurface< Face > > releaseGeom ( )

Release (clear) geometry and return for reuse.

Definition at line 1402 of file MeshedSurface.C.

◆ swapFaces()

void swapFaces ( List< Face > &  faces)

Swap the stored faces. Use with caution.

Definition at line 1409 of file MeshedSurface.C.

Referenced by triSurface::transfer().

Here is the caller graph for this function:

◆ swapPoints()

void swapPoints ( pointField points)

Swap the stored points.

Definition at line 1422 of file MeshedSurface.C.

Referenced by triSurface::transfer().

Here is the caller graph for this function:

◆ read() [1/2]

bool read ( const fileName name,
const word fileType 
)

Read from file. Chooses reader based on explicit extension.

Definition at line 1442 of file MeshedSurface.C.

◆ read() [2/2]

◆ writeStats()

void writeStats ( Ostream os) const

Definition at line 62 of file MeshedSurfaceIO.C.

◆ write() [3/5]

◆ write() [4/5]

virtual void write ( const fileName name,
const word fileType,
IOstreamOption  streamOpt = IOstreamOption(),
const dictionary options = dictionary::null 
) const
inlinevirtual

Generic write routine for given format type.

If the format type is "", uses the file extension.

Definition at line 645 of file MeshedSurface.H.

◆ write() [5/5]

void write ( const Time runTime,
const word surfName = word::null 
) const

Write to database.

Definition at line 1455 of file MeshedSurface.C.

◆ operator=() [1/2]

void operator= ( const MeshedSurface< Face > &  surf)

Copy assignment.

Definition at line 1467 of file MeshedSurface.C.

◆ operator=() [2/2]

void operator= ( MeshedSurface< Face > &&  surf)

Move assignment.

Definition at line 1485 of file MeshedSurface.C.

◆ operator MeshedSurfaceProxy< Face >()

operator MeshedSurfaceProxy< Face > ( ) const

Conversion operator to MeshedSurfaceProxy.

◆ addZonesToFaces() [2/3]

bool addZonesToFaces ( )

Specialization for labelledTri.

◆ transcribe() [2/4]

void transcribe ( MeshedSurface< face > &  surf)
protected

Definition at line 39 of file MeshedSurfaceCore.C.

◆ transcribe() [3/4]

void transcribe ( MeshedSurface< face > &  surf)
protected

Definition at line 51 of file MeshedSurfaceCore.C.

◆ transcribe() [4/4]

void transcribe ( MeshedSurface< face > &  surf)
protected

Definition at line 84 of file MeshedSurfaceCore.C.

◆ addZonesToFaces() [3/3]

bool addZonesToFaces ( )

Definition at line 115 of file MeshedSurfaceCore.C.

Friends And Related Function Documentation

◆ MeshedSurface

friend class MeshedSurface
friend

Definition at line 101 of file MeshedSurface.H.

◆ UnsortedMeshedSurface

friend class UnsortedMeshedSurface
friend

Definition at line 102 of file MeshedSurface.H.

◆ surfMesh

friend class surfMesh
friend

Definition at line 105 of file MeshedSurface.H.

◆ operator>>

Istream& operator>> ( Istream is,
MeshedSurface< Face > &  surf 
)
friend

Read MeshedSurface from Istream.

Avoid using to read/write file content (fragile).

◆ operator

Ostream& operator ( Ostream os,
const MeshedSurface< Face > &  surf 
)
friend

Write MeshedSurface to Ostream.

Avoid using to read/write file content (fragile).


The documentation for this class was generated from the following files: