Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions
TRIsurfaceFormat< Face > Class Template Reference

Provide a means of reading/writing .tri format. More...

Inheritance diagram for TRIsurfaceFormat< Face >:
Inheritance graph
[legend]
Collaboration diagram for TRIsurfaceFormat< Face >:
Collaboration graph
[legend]

Public Member Functions

 TRIsurfaceFormat (const fileName &)
 Construct from file name. More...
 
virtual ~TRIsurfaceFormat ()
 Destructor. More...
 
virtual bool read (const fileName &)
 Read from file. More...
 
virtual void write (const fileName &name) const
 Write object. More...
 
- Public Member Functions inherited from MeshedSurface< Face >
 MeshedSurface ()
 Construct null. More...
 
 MeshedSurface (const Xfer< pointField > &, const Xfer< List< Face > > &, const Xfer< surfZoneList > &)
 Construct by transferring components (points, faces, zones). More...
 
 MeshedSurface (const Xfer< pointField > &, const Xfer< List< Face > > &, const labelUList &zoneSizes=labelUList(), const UList< word > &zoneNames=UList< word >())
 Construct by transferring components (points, faces). More...
 
 MeshedSurface (const MeshedSurface &)
 Construct as copy. More...
 
 MeshedSurface (const UnsortedMeshedSurface< Face > &)
 Construct from a UnsortedMeshedSurface. More...
 
 MeshedSurface (const polyBoundaryMesh &, const bool globalPoints=false)
 Construct from a boundary mesh with local points/faces. More...
 
 MeshedSurface (const surfMesh &)
 Construct from a surfMesh. More...
 
 MeshedSurface (const Xfer< UnsortedMeshedSurface< Face > > &)
 Construct by transferring the contents from a UnsortedMeshedSurface. More...
 
 MeshedSurface (const Xfer< MeshedSurface< Face > > &)
 Construct by transferring the contents from a MeshedSurface. More...
 
 MeshedSurface (const fileName &)
 Construct from file name (uses extension to determine type) More...
 
 MeshedSurface (const fileName &, const word &ext)
 Construct from file name (uses extension to determine type) More...
 
 MeshedSurface (const Time &, const word &surfName="")
 Construct from database. More...
 
 MeshedSurface ()
 
 MeshedSurface (const Xfer< pointField > &pointLst, const Xfer< List< Face > > &faceLst, const Xfer< surfZoneList > &zoneLst)
 
 MeshedSurface (const Xfer< pointField > &pointLst, const Xfer< List< Face > > &faceLst, const labelUList &zoneSizes, const UList< word > &zoneNames)
 
 MeshedSurface (const MeshedSurface< Face > &surf)
 
 MeshedSurface (const UnsortedMeshedSurface< Face > &surf)
 
 MeshedSurface (const surfMesh &mesh)
 
 MeshedSurface (const polyBoundaryMesh &bMesh, const bool useGlobalPoints)
 
 MeshedSurface (const fileName &name, const word &ext)
 
 MeshedSurface (const fileName &name)
 
 MeshedSurface (const Time &t, const word &surfName)
 
 MeshedSurface (const Xfer< UnsortedMeshedSurface< Face > > &surf)
 
 MeshedSurface (const Xfer< MeshedSurface< Face > > &surf)
 
 ClassName ("MeshedSurface")
 Runtime type information. More...
 
bool isTri ()
 Specialization for holding triangulated information. 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),(name, surf))
 
void write (const Time &, const word &surfName="") const
 Write to database. More...
 
label size () const
 The surface size is the number of faces. More...
 
const List< Face > & faces () const
 Return const access to the faces. More...
 
const List< surfZone > & surfZones () const
 Const access to the surface zones. 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...
 
virtual void removeZones ()
 Remove surface zones. More...
 
virtual void clear ()
 Clear all storage. More...
 
virtual void movePoints (const pointField &)
 Move points. More...
 
virtual void scalePoints (const scalar)
 Scale points. A non-positive factor is ignored. More...
 
virtual void reset (const Xfer< pointField > &points, const Xfer< List< Face > > &faces, const Xfer< surfZoneList > &zones)
 Reset primitive data (points, faces and zones) More...
 
virtual void reset (const Xfer< List< point > > &points, const Xfer< List< Face > > &faces, const Xfer< surfZoneList > &zones)
 Reset primitive data (points, faces and zones) More...
 
virtual void cleanup (const bool verbose)
 Remove invalid faces. More...
 
virtual bool stitchFaces (const scalar tol=SMALL, const bool verbose=false)
 
virtual bool checkFaces (const bool verbose=false)
 
virtual label triangulate ()
 Triangulate in-place, returning the number of triangles added. More...
 
virtual label triangulate (List< label > &faceMap)
 Triangulate in-place, returning the number of triangles added. More...
 
label triangulate ()
 Specialization for holding triangulated information. More...
 
label triangulate (List< label > &faceMap)
 Specialization for holding triangulated information. More...
 
MeshedSurface subsetMesh (const labelHashSet &include, labelList &pointMap, labelList &faceMap) const
 Return new surface. More...
 
MeshedSurface subsetMesh (const labelHashSet &include) const
 Return new surface. More...
 
void transfer (MeshedSurface< Face > &)
 Transfer the contents of the argument and annul the argument. More...
 
void transfer (UnsortedMeshedSurface< Face > &)
 Transfer the contents of the argument and annul the argument. More...
 
Xfer< MeshedSurface< Face > > xfer ()
 Transfer contents to the Xfer container. More...
 
bool read (const fileName &, const word &ext)
 Read from file. Chooses reader based on explicit extension. More...
 
void writeStats (Ostream &os) const
 
void operator= (const MeshedSurface< Face > &)
 
 operator MeshedSurfaceProxy< Face > () const
 Conversion operator to MeshedSurfaceProxy. More...
 

Static Public Member Functions

static autoPtr< MeshedSurface< Face > > New (const fileName &name)
 Read file and return surface. More...
 
static void write (const fileName &, const MeshedSurfaceProxy< Face > &)
 Write surface mesh components by proxy. More...
 
static void write (const fileName &, const UnsortedMeshedSurface< Face > &)
 Write UnsortedMeshedSurface,. More...
 
- Static Public Member Functions inherited from MeshedSurface< Face >
static bool isTri ()
 Face storage only handles triangulated faces. More...
 
static bool canRead (const fileName &, const bool verbose=false)
 Can we read this file format? More...
 
static bool canReadType (const word &ext, const bool verbose=false)
 Can we read this file format? More...
 
static bool canWriteType (const word &ext, const bool verbose=false)
 Can we write this file format? More...
 
static wordHashSet readTypes ()
 
static wordHashSet writeTypes ()
 
static autoPtr< MeshedSurfaceNew (const fileName &, const word &ext)
 Select constructed from filename (explicit extension) More...
 
static autoPtr< MeshedSurfaceNew (const fileName &)
 Select constructed from filename (implicit extension) More...
 
static void write (const fileName &, const MeshedSurface< Face > &)
 Write to file. More...
 

Private Member Functions

 TRIsurfaceFormat (const TRIsurfaceFormat< Face > &)
 Disallow default bitwise copy construct. More...
 
void operator= (const TRIsurfaceFormat< Face > &)
 Disallow default bitwise assignment. More...
 

Static Private Member Functions

static void writeShell (Ostream &, const pointField &, const Face &, const label zoneI)
 

Additional Inherited Members

- Public Types inherited from MeshedSurface< Face >
typedef Face FaceType
 Face type used. More...
 
- Protected Member Functions inherited from MeshedSurface< Face >
void transcribe (MeshedSurface< face > &)
 Transfer points/zones and transcribe face -> triFace. More...
 
void transcribe (MeshedSurface< face > &surf)
 
void transcribe (MeshedSurface< face > &surf)
 
void checkZones ()
 Basic sanity check on zones. More...
 
pointFieldstoredPoints ()
 Non-const access to global points. More...
 
List< Face > & storedFaces ()
 Non-const access to the faces. More...
 
surfZoneListstoredZones ()
 Non-const access to the zones. More...
 
void sortFacesAndStore (const Xfer< List< Face > > &unsortedFaces, const Xfer< List< label > > &zoneIds, const bool sorted)
 Sort faces by zones and store sorted faces. More...
 
virtual void remapFaces (const labelUList &faceMap)
 Set new zones from faceMap. More...
 

Detailed Description

template<class Face>
class Foam::fileFormats::TRIsurfaceFormat< Face >

Provide a means of reading/writing .tri format.

Note
For efficiency, the zones are sorted before creating the faces. The class is thus derived from MeshedSurface.
Source files

Definition at line 58 of file TRIsurfaceFormat.H.

Constructor & Destructor Documentation

◆ TRIsurfaceFormat() [1/2]

TRIsurfaceFormat ( const TRIsurfaceFormat< Face > &  )
private

Disallow default bitwise copy construct.

◆ TRIsurfaceFormat() [2/2]

TRIsurfaceFormat ( const fileName filename)

Construct from file name.

Definition at line 63 of file TRIsurfaceFormat.C.

References Foam::read().

Here is the call graph for this function:

◆ ~TRIsurfaceFormat()

virtual ~TRIsurfaceFormat ( )
inlinevirtual

Destructor.

Definition at line 100 of file TRIsurfaceFormat.H.

Member Function Documentation

◆ writeShell()

void writeShell ( Ostream os,
const pointField pointLst,
const Face &  f,
const label  zoneI 
)
inlinestaticprivate

Definition at line 33 of file TRIsurfaceFormat.C.

References Foam::dec(), Foam::endl(), f(), Foam::hex(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().

Here is the call graph for this function:

◆ operator=()

void operator= ( const TRIsurfaceFormat< Face > &  )
private

Disallow default bitwise assignment.

◆ New()

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

Read file and return surface.

Definition at line 90 of file TRIsurfaceFormat.H.

References Foam::name().

Here is the call graph for this function:

◆ write() [1/3]

void write ( const fileName filename,
const MeshedSurfaceProxy< Face > &  surf 
)
static

Write surface mesh components by proxy.

Definition at line 130 of file TRIsurfaceFormat.C.

References Foam::exit(), f(), Foam::faceMap(), MeshedSurfaceProxy::faceMap(), MeshedSurfaceProxy::faces(), Foam::FatalError, FatalErrorInFunction, forAll, IOstream::good(), MeshedSurfaceProxy::points(), List::size(), MeshedSurfaceProxy::surfZones(), and MeshedSurfaceProxy::useFaceMap().

Referenced by TRIsurfaceFormat< Face >::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write() [2/3]

void write ( const fileName filename,
const UnsortedMeshedSurface< Face > &  surf 
)
static

Write UnsortedMeshedSurface,.

by default the output is not sorted by zones

Definition at line 183 of file TRIsurfaceFormat.C.

References Foam::exit(), f(), Foam::faceMap(), Foam::FatalError, FatalErrorInFunction, forAll, IOstream::good(), UnsortedMeshedSurface::sortedZones(), UnsortedMeshedSurface::zoneIds(), and UnsortedMeshedSurface::zoneToc().

Here is the call graph for this function:

◆ read()

bool read ( const fileName filename)
virtual

◆ write() [3/3]

virtual void write ( const fileName name) const
inlinevirtual

Write object.

Reimplemented from MeshedSurface< Face >.

Definition at line 117 of file TRIsurfaceFormat.H.

References Foam::name(), and TRIsurfaceFormat< Face >::write().

Here is the call graph for this function:

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