Read/write the surface shells from PROSTAR vrt/cel files. More...
Public Member Functions | |
STARCDsurfaceFormat (const fileName &filename) | |
Construct from file name. More... | |
virtual | ~STARCDsurfaceFormat ()=default |
Destructor. More... | |
virtual bool | read (const fileName &filename) |
Read from file. More... | |
virtual void | write (const fileName &name, IOstreamOption streamOpt=IOstreamOption(), const dictionary &options=dictionary::null) const |
Write surface mesh to file. More... | |
Public Member Functions inherited from MeshedSurface< Face > | |
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 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... | |
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... | |
void | writeStats (Ostream &os) const |
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 void | write (const fileName &filename, const MeshedSurfaceProxy< Face > &surf, IOstreamOption streamOpt=IOstreamOption(), const dictionary &=dictionary::null) |
Write surface mesh components by proxy. More... | |
Static Public Member Functions inherited from MeshedSurface< Face > | |
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 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 Public Member Functions inherited from STARCDCore | |
static fileName | starFileName (const fileName &baseName, const enum fileExt ext) |
Resolve base file-name for the given file-type. More... | |
static void | removeFiles (const fileName &baseName) |
Remove existing PROSTAR files for the given base file-name. More... | |
static label | readPoints (IFstream &is, List< point > &points, List< label > &ids) |
Read points from a (.vrt) file, return the max prostar id used. More... | |
static void | writePoints (Ostream &os, const UList< point > &points, const scalar scaleFactor=1.0) |
Write header and points to (.vrt) file, optionally with scaling. More... | |
Additional Inherited Members | |
Public Types inherited from MeshedSurface< Face > | |
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 Types inherited from STARCDCore | |
enum | fileHeader { HEADER_CEL, HEADER_VRT, HEADER_BND } |
Enumeration defining the file headers. More... | |
enum | fileExt { CEL_FILE, VRT_FILE, BND_FILE, INP_FILE } |
Enumeration defining the file extensions. More... | |
enum | matlType { starcdFluidType = 1, starcdSolidType = 2, starcdBaffleType = 3, starcdShellType = 4, starcdLineType = 5, starcdPointType = 6 } |
Basic material type for STARCD/PROSTAR files. More... | |
enum | shapeType { starcdPoint = 1, starcdLine = 2, starcdShell = 3, starcdHex = 11, starcdPrism = 12, starcdTet = 13, starcdPyr = 14, starcdPoly = 255 } |
Shape-Type for STARCD/PROSTAR files. More... | |
Static Public Attributes inherited from STARCDCore | |
static const char *const | defaultBoundaryName |
The name for default (unassigned) boundaries. More... | |
static const char *const | defaultSolidBoundaryName |
The name we have chosen for default (unassigned) solid boundaries. More... | |
Protected Member Functions inherited from MeshedSurface< Face > | |
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... | |
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... | |
template<> | |
void | transcribe (MeshedSurface< face > &surf) |
template<> | |
void | transcribe (MeshedSurface< face > &surf) |
template<> | |
void | transcribe (MeshedSurface< face > &surf) |
Protected Member Functions inherited from STARCDCore | |
STARCDCore ()=default | |
Construct null. More... | |
Static Protected Member Functions inherited from STARCDsurfaceFormatCore | |
static Map< word > | readInpCellTable (ISstream &is) |
static void | writeCase (Ostream &os, const UList< point > &pts, const label nFaces, const UList< surfZone > &zoneLst) |
Static Protected Member Functions inherited from STARCDCore | |
static bool | readHeader (IFstream &is, const enum fileHeader header) |
Read header and check signature PROSTAR_(CELL|VERTEX|BOUNDARY) More... | |
static void | writeHeader (Ostream &os, const enum fileHeader header) |
Write header for fileType (CELL|VERTEX|BOUNDARY) More... | |
Static Protected Attributes inherited from STARCDCore | |
static const Map< FixedList< int, 6 > > | starToFoamFaceAddr |
Face addressing from PROSTAR faces to OpenFOAM faces. More... | |
static const Map< FixedList< int, 6 > > | foamToStarFaceAddr |
Face addressing from OpenFOAM faces to PROSTAR faces. More... | |
Read/write the surface shells from PROSTAR vrt/cel files.
Output dictionary options: ignored
Definition at line 69 of file STARCDsurfaceFormat.H.
STARCDsurfaceFormat | ( | const fileName & | filename | ) |
Construct from file name.
Definition at line 70 of file STARCDsurfaceFormat.C.
References Foam::blockMeshTools::read().
|
virtualdefault |
Destructor.
|
static |
Write surface mesh components by proxy.
Definition at line 262 of file STARCDsurfaceFormat.C.
References f(), MeshedSurfaceProxy< Face >::faceIds(), Foam::faceMap(), MeshedSurfaceProxy< Face >::faceMap(), IOstreamOption::format(), found, fileName::lessExt(), os(), MeshedSurfaceProxy< Face >::points(), UList< T >::size(), MeshedSurfaceProxy< Face >::surfFaces(), MeshedSurfaceProxy< Face >::surfZones(), MeshedSurfaceProxy< Face >::useFaceMap(), and Foam::writeHeader().
Referenced by STARCDsurfaceFormat< Face >::write().
Read from file.
Reimplemented from MeshedSurface< Face >.
Definition at line 82 of file STARCDsurfaceFormat.C.
References DynamicList< T, SizeMin >::append(), clear(), List< T >::clear(), DynamicList< T, SizeMin >::clear(), Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, forAll, IOstream::good(), token::isLabel(), token::labelToken(), fileName::lessExt(), IFstream::name(), Foam::name(), Foam::nl, points, ISstream::read(), DynamicList< T, SizeMin >::reserve(), and Foam::vertices().
|
inlinevirtual |
Write surface mesh to file.
Reimplemented from MeshedSurface< Face >.
Definition at line 116 of file STARCDsurfaceFormat.H.
References Foam::name(), and STARCDsurfaceFormat< Face >::write().