triSurfaceMesh Class Reference

A surface geometry formed of discrete facets, e.g. triangles and/or quadrilaterals, defined in a file using formats such as Wavefront OBJ, or stereolithography STL. More...

Inheritance diagram for triSurfaceMesh:
Collaboration diagram for triSurfaceMesh:

Public Member Functions

 TypeName ("triSurfaceMesh")
 Runtime type information. More...
 
 triSurfaceMesh (const IOobject &, const triSurface &)
 Construct from triSurface. More...
 
 triSurfaceMesh (const IOobject &io)
 Construct read. More...
 
 triSurfaceMesh (const IOobject &io, const dictionary &dict)
 Construct from IO and dictionary (used by searchableSurface). More...
 
 triSurfaceMesh (const IOobject &io, const bool isGlobal)
 
 triSurfaceMesh (const IOobject &io, const dictionary &dict, const bool isGlobal)
 
 triSurfaceMesh (const triSurfaceMesh &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~triSurfaceMesh ()
 Destructor. More...
 
void clearOut ()
 Clear storage. More...
 
virtual void setPoints (const pointField &)
 Move points. More...
 
const indexedOctree< treeDataEdge > & edgeTree () const
 Demand driven construction of octree for boundary edges. More...
 
virtual const wordListregions () const
 Names of regions. More...
 
virtual bool hasVolumeType () const
 Whether supports volume type below. I.e. whether is closed. More...
 
virtual label size () const
 Range of local indices that can be returned. More...
 
virtual tmp< pointFieldcoordinates () const
 Get representative set of element coordinates. More...
 
virtual void boundingSpheres (pointField &centres, scalarField &radiusSqr) const
 Get bounding spheres (centre and radius squared). Any point. More...
 
virtual tmp< pointFieldpoints () const
 Get the points that define the surface. More...
 
virtual bool overlaps (const boundBox &bb) const
 Does any part of the surface overlap the supplied bound box? More...
 
virtual void findNearest (const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &) const
 
virtual void findNearest (const pointField &sample, const scalarField &nearestDistSqr, const labelList &regionIndices, List< pointIndexHit > &) const
 Find the nearest locations for the supplied points to a. More...
 
virtual void findLine (const pointField &start, const pointField &end, List< pointIndexHit > &) const
 Find first intersection on segment from start to end. More...
 
virtual void findLineAny (const pointField &start, const pointField &end, List< pointIndexHit > &) const
 Return any intersection on segment from start to end. More...
 
virtual void findLineAll (const pointField &start, const pointField &end, List< List< pointIndexHit >> &) const
 Get all intersections in order from start to end. More...
 
virtual void getRegion (const List< pointIndexHit > &, labelList &region) const
 From a set of points and indices get the region. More...
 
virtual void getNormal (const List< pointIndexHit > &, vectorField &normal) const
 From a set of points and indices get the normal. More...
 
virtual void getVolumeType (const pointField &, List< volumeType > &) const
 Determine type (inside/outside/mixed) for point. unknown if. More...
 
virtual void setField (const labelList &values)
 WIP. Store element-wise field. More...
 
virtual void getField (const List< pointIndexHit > &, labelList &) const
 WIP. From a set of hits (points and. More...
 
Pair< tmp< triSurfaceScalarField > > extractCloseness (const scalar internalAngleTolerance=degToRad(80), const scalar externalAngleTolerance=degToRad(80)) const
 Return a pair of triSurfaceScalarFields representing the. More...
 
Pair< tmp< triSurfacePointScalarField > > extractPointCloseness (const scalar internalAngleTolerance=degToRad(80), const scalar externalAngleTolerance=degToRad(80)) const
 Return a pair of triSurfaceScalarPointFields representing the. More...
 
bool writeData (Ostream &) const
 writeData function required by regIOobject but not used More...
 
virtual bool writeObject (IOstream::streamFormat fmt, IOstream::versionNumber ver, IOstream::compressionType cmp, const bool write=true) const
 Write using given format, version and compression. More...
 
virtual bool global () const
 Is object global. More...
 
void operator= (const triSurfaceMesh &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from searchableSurface
 TypeName ("searchableSurface")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, searchableSurface, dict,(const IOobject &io, const dictionary &dict),(io, dict))
 
 searchableSurface (const IOobject &io)
 
 searchableSurface (const searchableSurface &)=delete
 Disallow default bitwise copy construction. More...
 
virtual autoPtr< searchableSurfaceclone () const
 Clone. More...
 
virtual ~searchableSurface ()
 Destructor. More...
 
const boundBoxbounds () const
 Return const reference to boundBox. More...
 
boundBoxbounds ()
 Return non-const access to the boundBox to allow it to be set. More...
 
virtual label globalSize () const
 Range of global indices that can be returned. More...
 
virtual void findNearest (const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &, vectorField &normal, labelList &region) const
 Find nearest, normal and region. Can be overridden with. More...
 
virtual void distribute (const List< treeBoundBox > &, const bool keepNonLocal, autoPtr< distributionMap > &faceMap, autoPtr< distributionMap > &pointMap)
 Set bounds of surface. Bounds currently set as list of. More...
 
void operator= (const searchableSurface &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 Runtime type information. More...
 
 regIOobject (const IOobject &, const bool isTime=false)
 Construct from IOobject. Optional flag for if IOobject is the. More...
 
 regIOobject (const regIOobject &)
 Copy constructor. More...
 
 regIOobject (const regIOobject &&)
 Move constructor. More...
 
 regIOobject (const regIOobject &, bool registerCopy)
 Copy constructor, transferring registry registration to copy. More...
 
 regIOobject (const word &newName, const regIOobject &, bool registerCopy)
 Copy constructor with new name, transferring registry registration. More...
 
 regIOobject (const IOobject &, const regIOobject &)
 Copy constructor with new IO parameters. More...
 
virtual ~regIOobject ()
 Destructor. More...
 
virtual bool globalFile () const
 Return true if object is global, i.e. same for all processors. More...
 
const fileNamecaseName () const
 
fileName path () const
 Return complete path. More...
 
fileName objectPath () const
 Return complete path + object name. More...
 
fileName filePath () const
 Return complete path + object name if the file exists. More...
 
bool checkIn ()
 Add object to registry. More...
 
bool checkOut ()
 Remove object from registry. More...
 
void addWatch ()
 Add file watch on object (if registered and READ_IF_MODIFIED) More...
 
bool registered () const
 Is this object registered with the registry? More...
 
bool ownedByRegistry () const
 Is this object owned by the registry? More...
 
void store ()
 Transfer ownership of this object to its registry. More...
 
void release ()
 Release ownership of this object from its registry. More...
 
label eventNo () const
 Event number at last update. More...
 
labeleventNo ()
 Event number at last update. More...
 
bool upToDate (const regIOobject &) const
 Return true if up-to-date with respect to given object. More...
 
bool upToDate (const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
void setUpToDate ()
 Set up to date (obviously) More...
 
bool headerOk ()
 Read and check header info. More...
 
IstreamreadStream (const word &, const bool read=true)
 Return Istream and check object type against that given. More...
 
void close ()
 Close Istream. More...
 
virtual bool readData (Istream &)
 Virtual readData function. More...
 
const labelListwatchIndices () const
 Return file-monitoring handles. More...
 
labelListwatchIndices ()
 Return file-monitoring handles. More...
 
virtual bool write (const bool write=true) const
 Write using setting from DB. More...
 
void operator= (const IOobject &)
 Assign to IOobject. More...
 
void operator= (const regIOobject &)=delete
 Disallow default assignment. More...
 
const fileNamecaseName (const bool global) const
 
fileName path (const bool global) const
 Return complete path including the processor sub-directory. More...
 
fileName objectPath (const bool global) const
 Return complete path + object name including the processor. More...
 
fileName filePath (const word &typeName, const bool global) const
 Return complete path + object name if the file exists. More...
 
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 Runtime type information. More...
 
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, registry, io options. More...
 
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, local, registry, io options. More...
 
 IOobject (const fileName &path, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from path, registry, io options. More...
 
 IOobject (const IOobject &io, const objectRegistry &registry)
 Construct from copy resetting registry. More...
 
 IOobject (const IOobject &io, const word &name)
 Construct from copy resetting name. More...
 
 IOobject (const IOobject &io)=default
 Copy constructor. More...
 
autoPtr< IOobjectclone () const
 Clone. More...
 
autoPtr< IOobjectclone (const objectRegistry &registry) const
 Clone resetting registry. More...
 
virtual ~IOobject ()
 Destructor. More...
 
const Timetime () const
 Return time. More...
 
const objectRegistrydb () const
 Return the local objectRegistry. More...
 
const wordname () const
 Return name. More...
 
const wordheaderClassName () const
 Return name of the class name read from header. More...
 
wordheaderClassName ()
 Return name of the class name read from header. More...
 
stringnote ()
 Return non-constant access to the optional note. More...
 
const stringnote () const
 Return the optional note. More...
 
bool & registerObject ()
 Register object created from this IOobject with registry if true. More...
 
bool registerObject () const
 Register object created from this IOobject with registry if true. More...
 
readOption readOpt () const
 
readOptionreadOpt ()
 
writeOption writeOpt () const
 
writeOptionwriteOpt ()
 
word group () const
 Return group (extension part of name) More...
 
word member () const
 Return member (name without the extension) More...
 
const fileNamerootPath () const
 
const fileNamecaseName (const bool global) const
 
fileNameinstance () const
 Return the instance directory, constant, system, <time> etc. More...
 
void updateInstance () const
 If the instance is a time directory update to the current time. More...
 
const fileNamelocal () const
 
fileName path (const bool global) const
 Return complete path including the processor sub-directory. More...
 
fileName objectPath (const bool global) const
 Return complete path + object name including the processor. More...
 
fileName relativePath () const
 Return the path relative to the case directory. More...
 
fileName relativeObjectPath () const
 Return complete relativePath + object name. More...
 
fileName filePath (const word &typeName, const bool global) const
 Return complete path + object name if the file exists. More...
 
bool readHeader (Istream &)
 Read header. More...
 
bool headerOk ()
 Read header of local object without type-checking. More...
 
template<class Type >
void warnNoRereading () const
 Helper: warn that type does not support re-reading. More...
 
bool writeHeader (Ostream &) const
 Write header. More...
 
bool writeHeader (Ostream &, const word &objectType) const
 Write header. Allow override of type. More...
 
bool good () const
 
bool bad () const
 
InfoProxy< IOobjectinfo () const
 Return info proxy. More...
 
void operator= (const IOobject &)
 
template<class Name >
Foam::word groupName (Name name, const word &group)
 
- Public Member Functions inherited from objectRegistry
 TypeName ("objectRegistry")
 Declare type name for this IOobject. More...
 
 objectRegistry (const Time &db, const label nIoObjects=128)
 Construct the time objectRegistry given an initial estimate. More...
 
 objectRegistry (const IOobject &io, const label nIoObjects=128)
 Construct a sub-registry given an IObject to describe the registry. More...
 
 objectRegistry (objectRegistry &&)=default
 Move constructor. More...
 
 objectRegistry (const objectRegistry &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~objectRegistry ()
 Destructor. More...
 
const Timetime () const
 Return time. More...
 
const objectRegistryparent () const
 Return the parent objectRegistry. More...
 
virtual const fileNamedbDir () const
 Local directory path of this objectRegistry relative to the time. More...
 
fileName path (const word &instance, const fileName &local="") const
 Return complete path with alternative instance and local. More...
 
wordList toc (const word &className) const
 Return the list of names of IOobjects of given class name. More...
 
wordList sortedToc (const word &className) const
 Return the sorted list of names of IOobjects of given class name. More...
 
template<class Type >
wordList toc () const
 Return the list of names of the IOobjects of given type. More...
 
template<class Type >
wordList toc (const wordRe &name) const
 Return the list of objects whose name matches the input regExp. More...
 
template<class Type >
wordList toc (const wordReList &name) const
 Return the list of objects whose name matches the input regExp. More...
 
const objectRegistrysubRegistry (const word &name, const bool forceCreate=false) const
 Lookup and return a const sub-objectRegistry. Optionally create. More...
 
template<class Type >
HashTable< const Type * > lookupClass (const bool strict=false) const
 Lookup and return all objects of the given Type. More...
 
template<class Type >
HashTable< Type * > lookupClass (const bool strict=false)
 Lookup and return all objects of the given Type. More...
 
template<class Type >
bool foundObject (const word &name) const
 Is the named Type in registry. More...
 
template<class Type >
const Type & lookupObject (const word &name) const
 Lookup and return the object of the given Type and name. More...
 
template<class Type >
Type & lookupObjectRef (const word &name) const
 Lookup and return the object reference of the given Type. More...
 
template<class Type >
bool foundType (const word &group=word::null) const
 Is the Type in registry. More...
 
template<class Type >
const Type & lookupType (const word &group=word::null) const
 Lookup and return the object of the given Type. More...
 
label getEvent () const
 Return new event number. More...
 
const objectRegistrythisDb () const
 Return the object registry. More...
 
virtual void rename (const word &newName)
 Rename. More...
 
bool checkIn (regIOobject &) const
 Add an regIOobject to registry. More...
 
bool checkOut (regIOobject &) const
 Remove an regIOobject from registry. More...
 
void clear ()
 Remove all regIOobject owned by the registry. More...
 
void addTemporaryObject (const word &name) const
 Add the given name to the set of temporary objects to cache. More...
 
bool cacheTemporaryObject (const word &name) const
 Return true if given name is in the cacheTemporaryObjects set. More...
 
template<class Object >
bool cacheTemporaryObject (Object &ob) const
 Cache the given object. More...
 
void resetCacheTemporaryObject (const regIOobject &ob) const
 Reset the cache state of the given object. More...
 
bool checkCacheTemporaryObjects () const
 Check that all objects in the cacheTemporaryObjects set. More...
 
virtual bool modified () const
 Return true if any of the object's files have been modified. More...
 
virtual bool dependenciesModified () const
 Cache pointers to objects who's dependencies have been modified. More...
 
virtual bool readIfModified ()
 Read object if modified. More...
 
virtual bool read ()
 Read dependent objects. More...
 
void readModifiedObjects ()
 Read the objects that have been modified. More...
 
void printToc (Ostream &os) const
 Print the list of object names and their type. More...
 
void operator= (const objectRegistry &)=delete
 Disallow default bitwise assignment. More...
 
template<class Type >
Foam::wordList toc () const
 
template<class Type >
Foam::wordList toc (const wordRe &name) const
 
template<class Type >
Foam::wordList toc (const wordReList &patterns) const
 
template<class Type >
Foam::HashTable< const Type * > lookupClass (const bool strict) const
 
template<class Type >
Foam::HashTable< Type * > lookupClass (const bool strict)
 
fileName path () const
 Return complete path. More...
 
- Public Member Functions inherited from HashTable< regIOobject * >
bool set (const word &, const regIOobject * &newElmt)
 Set a new hashedEntry, overwriting existing entries. More...
 
void set (const HashTable< regIOobject *, word, string::hash > &)
 Insert all the entries from the given HashTable,. More...
 
 HashTable (const label size=128)
 Construct given initial table size. More...
 
 HashTable (Istream &, const label size=128)
 Construct from Istream. More...
 
 HashTable (const UList< word > &keyList, const UList< regIOobject * > &elmtList)
 Construct from a list of keys and list of elements. More...
 
 HashTable (const HashTable< regIOobject *, word, string::hash > &)
 Copy constructor. More...
 
 HashTable (HashTable< regIOobject *, word, string::hash > &&)
 Move constructor. More...
 
 HashTable (std::initializer_list< Tuple2< word, regIOobject * >>)
 Construct from an initialiser list. More...
 
 ~HashTable ()
 Destructor. More...
 
label capacity () const
 The size of the underlying table. More...
 
label size () const
 Return number of elements in table. More...
 
bool empty () const
 Return true if the hash table is empty. More...
 
bool found (const word &) const
 Return true if hashedEntry is found in table. More...
 
iterator find (const word &)
 Find and return an iterator set at the hashedEntry. More...
 
const_iterator find (const word &) const
 Find and return an const_iterator set at the hashedEntry. More...
 
List< wordtoc () const
 Return the table of contents. More...
 
List< wordsortedToc () const
 Return the table of contents as a sorted list. More...
 
List< const_iteratorsorted () const
 Return a sorted list of constant iterators. More...
 
OstreamprintInfo (Ostream &) const
 Print information. More...
 
bool insert (const word &, const regIOobject * &newElmt)
 Insert a new hashedEntry. More...
 
void insert (const HashTable< regIOobject *, word, string::hash > &)
 Insert all the entries from the given HashTable. More...
 
bool erase (const iterator &)
 Erase a hashedEntry specified by given iterator. More...
 
bool erase (const word &)
 Erase a hashedEntry specified by the given key. More...
 
label erase (const UList< word > &)
 Remove entries given by the listed keys from this HashTable. More...
 
label erase (const HashTable< AnyType, word, AnyHash > &)
 Remove entries given by the given keys from this HashTable. More...
 
Foam::label erase (const HashTable< AnyType, word, AnyHash > &rhs)
 
void resize (const label newSize)
 Resize the hash table for efficiency. More...
 
void clear ()
 Clear all entries from table. More...
 
void clearStorage ()
 Clear the table entries and the table itself. More...
 
void shrink ()
 Shrink the allocated table to approx. twice number of elements. More...
 
void transfer (HashTable< regIOobject *, word, string::hash > &)
 Transfer the contents of the argument table into this table. More...
 
regIOobject * & operator[] (const word &)
 Find and return a hashedEntry. More...
 
const regIOobject * & operator[] (const word &) const
 Find and return a hashedEntry. More...
 
regIOobject * & operator() (const word &)
 Find and return a hashedEntry, create it null if not present. More...
 
void operator= (const HashTable< regIOobject *, word, string::hash > &)
 Assignment operator. More...
 
void operator= (HashTable< regIOobject *, word, string::hash > &&)
 Move assignment operator. More...
 
void operator= (std::initializer_list< Tuple2< word, regIOobject * >>)
 Assignment to an initialiser list. More...
 
bool operator== (const HashTable< regIOobject *, word, string::hash > &) const
 Equality. Hash tables are equal if the keys and values are equal. More...
 
bool operator!= (const HashTable< regIOobject *, word, string::hash > &) const
 The opposite of the equality operation. Takes linear time. More...
 
iterator begin ()
 Iterator set to the beginning of the HashTable. More...
 
const_iterator begin () const
 const_iterator set to the beginning of the HashTable More...
 
const_iterator cbegin () const
 const_iterator set to the beginning of the HashTable More...
 
- Public Member Functions inherited from HashTableCore
 HashTableCore ()
 Construct null. More...
 
 ClassName ("HashTable")
 Define template name and debug. More...
 
- Public Member Functions inherited from triSurface
 ClassName ("triSurface")
 Runtime type information. More...
 
 triSurface ()
 Construct null. More...
 
 triSurface (const List< labelledTri > &, const geometricSurfacePatchList &, const pointField &)
 Construct from triangles, patches, points. More...
 
 triSurface (List< labelledTri > &, const geometricSurfacePatchList &, pointField &, const bool reuse)
 Construct from triangles, patches, points. Reuse storage. More...
 
 triSurface (List< labelledTri > &&, const geometricSurfacePatchList &, pointField &&)
 Construct from triangles, patches, points. More...
 
 triSurface (const List< labelledTri > &, const pointField &)
 Construct from triangles, points. Set patchnames to default. More...
 
 triSurface (const triFaceList &, const pointField &)
 Construct from triangles, points. Set region to 0 and default. More...
 
 triSurface (const fileName &)
 Construct from file name (uses extension to determine type) More...
 
 triSurface (Istream &)
 Construct from Istream. More...
 
 triSurface (const Time &d)
 Construct from objectRegistry. More...
 
 triSurface (const triSurface &)
 Copy constructor. More...
 
 triSurface (triSurface &&)
 Move constructor. More...
 
virtual ~triSurface ()
 Destructor. More...
 
void clearOut ()
 
void clearTopology ()
 
void clearPatchMeshAddr ()
 
const geometricSurfacePatchListpatches () const
 
geometricSurfacePatchListpatches ()
 
const labelListListsortedEdgeFaces () const
 Return edge-face addressing sorted (for edges with more than. More...
 
const labelListedgeOwner () const
 If 2 face neighbours: label of face where ordering of edge. More...
 
virtual void scalePoints (const scalar)
 Scale points. A non-positive factor is ignored. More...
 
void checkTriangles (const bool verbose)
 Check/remove duplicate/degenerate triangles. More...
 
void checkEdges (const bool verbose)
 Check triply (or more) connected edges. More...
 
void cleanup (const bool verbose)
 Remove non-valid triangles. More...
 
void markZone (const boolList &borderEdge, const label facei, const label currentZone, labelList &faceZone) const
 Fill faceZone with currentZone for every face reachable. More...
 
label markZones (const boolList &borderEdge, labelList &faceZone) const
 (size and) fills faceZone with zone of face. Zone is area More...
 
void subsetMeshMap (const boolList &include, labelList &pointMap, labelList &faceMap) const
 'Create' sub mesh, including only faces for which More...
 
triSurface subsetMesh (const boolList &include, labelList &pointMap, labelList &faceMap) const
 Return new surface. Returns pointMap, faceMap from. More...
 
faceList faces () const
 Return the list of triangles as a faceList. More...
 
tmp< scalarFieldcurvature () const
 Return the curvature of surface at the points. More...
 
void write (Ostream &) const
 Write to Ostream in simple FOAM format. More...
 
void write (const fileName &, const bool sortByRegion=false) const
 Generic write routine. Chooses writer based on extension. More...
 
void write (const Time &) const
 Write to database. More...
 
void writeStats (Ostream &) const
 Write some statistics. More...
 
void operator= (const triSurface &)
 
void operator= (triSurface &&)
 
- Public Member Functions inherited from PrimitivePatch<::Foam::List< labelledTri >, pointField >
 PrimitivePatch (const ::Foam::List< labelledTri > &faces, const Field< PointType > &points)
 Construct from components. More...
 
 PrimitivePatch (::Foam::List< labelledTri > &&faces, Field< PointType > &&points)
 Move constructor from components. More...
 
 PrimitivePatch (::Foam::List< labelledTri > &faces, Field< PointType > &points, const bool reuse)
 Construct from components, reuse storage. More...
 
 PrimitivePatch (const PrimitivePatch< ::Foam::List< labelledTri >, pointField > &)
 Copy constructor. More...
 
 PrimitivePatch (PrimitivePatch< ::Foam::List< labelledTri >, pointField > &&)
 Move constructor. More...
 
autoPtr< PrimitivePatch< ::Foam::List< labelledTri >, pointField > > clone () const
 Construct and return a clone. More...
 
 ~PrimitivePatch ()
 Destructor. More...
 
const Field< PointType > & points () const
 Return reference to global points. More...
 
label nPoints () const
 Return number of points supporting patch faces. More...
 
label nEdges () const
 Return number of edges in patch. More...
 
const edgeListedges () const
 Return list of edges, address into LOCAL point list. More...
 
label nInternalEdges () const
 Number of internal edges. More...
 
bool isInternalEdge (const label edgeI) const
 Is internal edge? More...
 
const labelListboundaryPoints () const
 Return list of boundary points,. More...
 
const labelListListfaceFaces () const
 Return face-face addressing. More...
 
const labelListListedgeFaces () const
 Return edge-face addressing. More...
 
const labelListListfaceEdges () const
 Return face-edge addressing. More...
 
const labelListListpointEdges () const
 Return point-edge addressing. More...
 
const labelListListpointFaces () const
 Return point-face addressing. More...
 
const List< FaceType > & localFaces () const
 Return patch faces addressing into local point list. More...
 
const labelListmeshPoints () const
 Return labelList of mesh points in patch. They are constructed. More...
 
const Map< label > & meshPointMap () const
 Mesh point map. Given the global point index find its. More...
 
const Field< PointType > & localPoints () const
 Return pointField of points in patch. More...
 
const labelListlocalPointOrder () 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...
 
label whichEdge (const edge &) const
 Given an edge in local point labels, return its. More...
 
labelList meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const
 Return labels of patch edges in the global edge list using. More...
 
labelList meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const
 Return labels of patch edges in the global edge list using. More...
 
const Field< PointType > & faceCentres () const
 Return face centres for patch. More...
 
const Field< PointType > & faceAreas () const
 Return face areas for patch. More...
 
const Field< PointType > & faceNormals () const
 Return face normals for patch. More...
 
const Field< PointType > & pointNormals () const
 Return point normals for patch. More...
 
List< objectHitprojectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const
 Project vertices of patch onto another patch. More...
 
Foam::List< Foam::objectHitprojectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const
 
List< objectHitprojectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const
 Project vertices of patch onto another patch. More...
 
Foam::List< Foam::objectHitprojectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const
 
const labelListListedgeLoops () 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...
 
void clearOut ()
 
void clearGeom ()
 
void clearTopology ()
 
void clearPatchMeshAddr ()
 
void operator= (const PrimitivePatch< ::Foam::List< labelledTri >, pointField > &)
 Assignment operator. More...
 
void operator= (PrimitivePatch< ::Foam::List< labelledTri >, pointField > &&)
 Move assignment operator. More...
 
- Public Member Functions inherited from List< T >
 List ()
 Null constructor. More...
 
 List (const label)
 Construct with given size. More...
 
 List (const label, const T &)
 Construct with given size and value for all elements. More...
 
 List (const label, const zero)
 Construct with given size initialising all elements to zero. More...
 
 List (const List< T > &)
 Copy constructor. More...
 
template<class T2 >
 List (const UList< T2 > &)
 Copy constructor from list containing another type. More...
 
 List (List< T > &&)
 Move constructor. More...
 
 List (List< T > &, bool reuse)
 Construct as copy or reuse as specified. More...
 
 List (const UList< T > &, const labelUList &mapAddressing)
 Construct as subset. More...
 
template<class InputIterator >
 List (InputIterator first, InputIterator last)
 Construct given start and end iterators. More...
 
template<unsigned Size>
 List (const FixedList< T, Size > &)
 Construct as copy of FixedList<T, Size> More...
 
 List (const PtrList< T > &)
 Construct as copy of PtrList<T> More...
 
 List (const SLList< T > &)
 Construct as copy of SLList<T> More...
 
 List (const UIndirectList< T > &)
 Construct as copy of UIndirectList<T> More...
 
 List (const BiIndirectList< T > &)
 Construct as copy of BiIndirectList<T> More...
 
 List (std::initializer_list< T >)
 Construct from an initialiser list. More...
 
 List (Istream &)
 Construct from Istream. More...
 
autoPtr< List< T > > clone () const
 Clone. More...
 
 ~List ()
 Destructor. More...
 
label size () const
 Return the number of elements in the UList. More...
 
void resize (const label)
 Alias for setSize(const label) More...
 
void resize (const label, const T &)
 Alias for setSize(const label, const T&) More...
 
void setSize (const label)
 Reset size of List. More...
 
void setSize (const label, const T &)
 Reset size of List and value for new elements. More...
 
void clear ()
 Clear the list, i.e. set size to zero. More...
 
void append (const T &)
 Append an element at the end of the list. More...
 
void append (const UList< T > &)
 Append a List at the end of this list. More...
 
void append (const UIndirectList< T > &)
 Append a UIndirectList at the end of this list. More...
 
void transfer (List< T > &)
 Transfer the contents of the argument List into this list. More...
 
template<unsigned SizeInc, unsigned SizeMult, unsigned SizeDiv>
void transfer (DynamicList< T, SizeInc, SizeMult, SizeDiv > &)
 Transfer the contents of the argument List into this list. More...
 
void transfer (SortableList< T > &)
 Transfer the contents of the argument List into this list. More...
 
TnewElmt (const label)
 Return subscript-checked element of UList. More...
 
void shallowCopy (const UList< T > &)=delete
 Disallow implicit shallowCopy. More...
 
void operator= (const UList< T > &)
 Assignment to UList operator. Takes linear time. More...
 
void operator= (const List< T > &)
 Assignment operator. Takes linear time. More...
 
void operator= (List< T > &&)
 Move assignment operator. More...
 
void operator= (const SLList< T > &)
 Assignment to SLList operator. Takes linear time. More...
 
void operator= (const UIndirectList< T > &)
 Assignment to UIndirectList operator. Takes linear time. More...
 
void operator= (const BiIndirectList< T > &)
 Assignment to BiIndirectList operator. Takes linear time. More...
 
void operator= (std::initializer_list< T >)
 Assignment to an initialiser list. More...
 
void operator= (const T &)
 Assignment of all entries to the given value. More...
 
void operator= (const zero)
 Assignment of all entries to zero. More...
 
- Public Member Functions inherited from UList< T >
 UList ()
 Null constructor. More...
 
 UList (T *__restrict__ v, label size)
 Construct from components. More...
 
 UList (const UList< T > &)=default
 Copy construct. More...
 
label fcIndex (const label i) const
 Return the forward circular index, i.e. the next index. More...
 
label rcIndex (const label i) const
 Return the reverse circular index, i.e. the previous index. More...
 
std::streamsize byteSize () const
 Return the binary size in number of characters of the UList. More...
 
const Tcdata () const
 Return a const pointer to the first data element,. More...
 
Tdata ()
 Return a pointer to the first data element,. More...
 
Tfirst ()
 Return the first element of the list. More...
 
const Tfirst () const
 Return first element of the list. More...
 
Tlast ()
 Return the last element of the list. More...
 
const Tlast () const
 Return the last element of the list. More...
 
void checkStart (const label start) const
 Check start is within valid range (0 ... size-1) More...
 
void checkSize (const label size) const
 Check size is within valid range (0 ... size) More...
 
void checkIndex (const label i) const
 Check index i is within valid range (0 ... size-1) More...
 
void shallowCopy (const UList< T > &)
 Copy the pointer held by the given UList. More...
 
void deepCopy (const UList< T > &)
 Copy elements of the given UList. More...
 
Toperator[] (const label)
 Return element of UList. More...
 
const Toperator[] (const label) const
 Return element of constant UList. More...
 
 operator const Foam::List< T > & () const
 Allow cast to a const List<T>&. More...
 
void operator= (const T &)
 Assignment of all entries to the given value. More...
 
void operator= (const zero)
 Assignment of all entries to zero. More...
 
iterator begin ()
 Return an iterator to begin traversing the UList. More...
 
iterator end ()
 Return an iterator to end traversing the UList. More...
 
const_iterator cbegin () const
 Return const_iterator to begin traversing the constant UList. More...
 
const_iterator cend () const
 Return const_iterator to end traversing the constant UList. More...
 
const_iterator begin () const
 Return const_iterator to begin traversing the constant UList. More...
 
const_iterator end () const
 Return const_iterator to end traversing the constant UList. More...
 
reverse_iterator rbegin ()
 Return reverse_iterator to begin reverse traversing the UList. More...
 
reverse_iterator rend ()
 Return reverse_iterator to end reverse traversing the UList. More...
 
const_reverse_iterator crbegin () const
 Return const_reverse_iterator to begin reverse traversing the UList. More...
 
const_reverse_iterator crend () const
 Return const_reverse_iterator to end reverse traversing the UList. More...
 
const_reverse_iterator rbegin () const
 Return const_reverse_iterator to begin reverse traversing the UList. More...
 
const_reverse_iterator rend () const
 Return const_reverse_iterator to end reverse traversing the UList. More...
 
label size () const
 Return the number of elements in the UList. More...
 
label max_size () const
 Return size of the largest possible UList. More...
 
bool empty () const
 Return true if the UList is empty (ie, size() is zero) More...
 
void swap (UList< T > &)
 Swap two ULists of the same type in constant time. More...
 
bool operator== (const UList< T > &) const
 Equality operation on ULists of the same type. More...
 
bool operator!= (const UList< T > &) const
 The opposite of the equality operation. Takes linear time. More...
 
bool operator< (const UList< T > &) const
 Compare two ULists lexicographically. Takes linear time. More...
 
bool operator> (const UList< T > &) const
 Compare two ULists lexicographically. Takes linear time. More...
 
bool operator<= (const UList< T > &) const
 Return true if !(a > b). Takes linear time. More...
 
bool operator>= (const UList< T > &) const
 Return true if !(a < b). Takes linear time. More...
 
const bool & operator[] (const label i) const
 
- Public Member Functions inherited from triSurfaceRegionSearch
 triSurfaceRegionSearch (const triSurface &)
 Construct from surface. Holds reference to surface! More...
 
 triSurfaceRegionSearch (const triSurface &, const dictionary &dict)
 Construct from surface and dictionary. Holds reference to surface! More...
 
 triSurfaceRegionSearch (const triSurfaceRegionSearch &)=delete
 Disallow default bitwise copy construction. More...
 
 ~triSurfaceRegionSearch ()
 Destructor. More...
 
void clearOut ()
 Clear storage. More...
 
const PtrList< treeType > & treeByRegion () const
 Demand driven construction of octree for each region. More...
 
void findNearest (const pointField &samples, const scalarField &nearestDistSqr, const labelList &regionIndices, List< pointIndexHit > &info) const
 Find the nearest point on the surface out of the regions. More...
 
void operator= (const triSurfaceRegionSearch &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from triSurfaceSearch
 triSurfaceSearch (const triSurface &)
 Construct from surface. Holds reference to surface! More...
 
 triSurfaceSearch (const triSurface &, const dictionary &dict)
 Construct from surface and dictionary. More...
 
 triSurfaceSearch (const triSurface &surface, const scalar tolerance, const label maxTreeDepth)
 Construct from components. More...
 
 triSurfaceSearch (const triSurfaceSearch &)=delete
 Disallow default bitwise copy construction. More...
 
 ~triSurfaceSearch ()
 Destructor. More...
 
void clearOut ()
 Clear storage. More...
 
const indexedOctree< treeDataTriSurface > & tree () const
 Demand driven construction of the octree. More...
 
const triSurfacesurface () const
 Return reference to the surface. More...
 
scalar tolerance () const
 Return tolerance to use in searches. More...
 
label maxTreeDepth () const
 Return max tree depth of octree. More...
 
boolList calcInside (const pointField &searchPoints) const
 Calculate for each searchPoint inside/outside status. More...
 
void findNearest (const pointField &samples, const scalarField &nearestDistSqr, List< pointIndexHit > &info) const
 
pointIndexHit nearest (const point &, const vector &span) const
 Calculate nearest point on surface for single searchPoint. Returns. More...
 
void findLine (const pointField &start, const pointField &end, List< pointIndexHit > &info) const
 
void findLineAny (const pointField &start, const pointField &end, List< pointIndexHit > &info) const
 
void findLineAll (const pointField &start, const pointField &end, List< List< pointIndexHit >> &info) const
 Calculate all intersections from start to end. More...
 
void operator= (const triSurfaceSearch &)=delete
 Disallow default bitwise assignment. More...
 

Additional Inherited Members

- Public Types inherited from IOobject
enum  objectState { GOOD , BAD }
 Enumeration defining the valid states of an IOobject. More...
 
enum  readOption { MUST_READ , MUST_READ_IF_MODIFIED , READ_IF_PRESENT , NO_READ }
 Enumeration defining the read options. More...
 
enum  writeOption { AUTO_WRITE = 0 , NO_WRITE = 1 }
 Enumeration defining the write options. More...
 
enum  fileCheckTypes { timeStamp , timeStampMaster , inotify , inotifyMaster }
 Enumeration defining the file checking options. More...
 
- Public Types inherited from HashTable< regIOobject * >
typedef regIOobjectvalue_type
 Type of values the HashTable contains. More...
 
typedef regIOobject * & reference
 Type that can be used for storing into HashTable::value_type. More...
 
typedef const regIOobject * & const_reference
 Type that can be used for storing into constant. More...
 
typedef label size_type
 The type that can represent the size of a HashTable. More...
 
- Public Types inherited from triSurface
typedef bool BoundaryMesh
 Placeholder only, but do not remove - it is needed for GeoMesh. More...
 
- Public Types inherited from PrimitivePatch<::Foam::List< labelledTri >, pointField >
enum  surfaceTopo
 Enumeration defining the surface type. Used in check routines. More...
 
typedef ::Foam::List< labelledTriFaceListType
 
typedef std::remove_reference< ::Foam::List< labelledTri > >::type::value_type FaceType
 
typedef pointField PointFieldType
 
typedef std::remove_reference< pointField >::type::value_type PointType
 
- Public Types inherited from List< T >
typedef SubList< TsubList
 Declare type of subList. More...
 
- Public Types inherited from UList< T >
typedef T value_type
 Type of values the UList contains. More...
 
typedef Treference
 Type that can be used for storing into. More...
 
typedef const Tconst_reference
 Type that can be used for storing into. More...
 
typedef label difference_type
 The type that can represent the difference between any two. More...
 
typedef label size_type
 The type that can represent the size of a UList. More...
 
typedef Titerator
 Random access iterator for traversing UList. More...
 
typedef const Tconst_iterator
 Random access iterator for traversing UList. More...
 
typedef std::reverse_iterator< iteratorreverse_iterator
 Reverse iterator for reverse traversal of UList. More...
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 Reverse iterator for reverse traversal of constant UList. More...
 
- Static Public Member Functions inherited from searchableSurface
static autoPtr< searchableSurfaceNew (const word &surfaceType, const IOobject &io, const dictionary &dict)
 Return a reference to the selected searchableSurface. More...
 
static const wordgeometryDir ()
 Return the geometry directory name. More...
 
static const wordgeometryDir (const Time &time)
 Check that the geometry directory exists and return. More...
 
- Static Public Member Functions inherited from regIOobject
template<class Type >
static Type & store (Type *)
 Transfer ownership of the given object pointer to its registry. More...
 
template<class Type >
static Type & store (autoPtr< Type > &)
 Transfer ownership of the given object pointer to its registry. More...
 
- Static Public Member Functions inherited from IOobject
static bool fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name)
 Split path into instance, local, name components. More...
 
template<class Name >
static word groupName (Name name, const word &group)
 
static word group (const word &name)
 Return group (extension part of name) More...
 
static word member (const word &name)
 Return member (name without the extension) More...
 
template<class Stream >
static Stream & writeBanner (Stream &os, bool noHint=false)
 Write the standard OpenFOAM file/dictionary banner. More...
 
template<class Stream >
static Stream & writeDivider (Stream &os)
 Write the standard file section divider. More...
 
template<class Stream >
static Stream & writeEndDivider (Stream &os)
 Write the standard end file divider. More...
 
- Static Public Member Functions inherited from HashTableCore
static label canonicalSize (const label)
 Return a canonical (power-of-two) size. More...
 
static iteratorEnd cend ()
 iteratorEnd set to beyond the end of any HashTable More...
 
static iteratorEnd end ()
 iteratorEnd set to beyond the end of any HashTable More...
 
- Static Public Member Functions inherited from triSurface
static fileName triSurfInstance (const Time &)
 Name of triSurface directory to use. More...
 
- Static Public Member Functions inherited from List< T >
static const List< T > & null ()
 Return a null List. More...
 
- Static Public Member Functions inherited from UList< T >
static const UList< T > & null ()
 Return a null UList. More...
 
- Static Public Attributes inherited from searchableSurface
static word geometryDir_
 Name of the directory for the geometry files. More...
 
- Static Public Attributes inherited from regIOobject
static float fileModificationSkew
 
- Static Public Attributes inherited from IOobject
static constexpr const char * foamFile = "FoamFile"
 Keyword for the FoamFile header sub-dictionary. More...
 
static const NamedEnum< fileCheckTypes, 4 > fileCheckTypesNames
 
static fileCheckTypes fileModificationChecking
 Type of file modification checking. More...
 
- Static Public Attributes inherited from HashTableCore
static const label maxTableSize
 Maximum allowable table size. More...
 
- Protected Member Functions inherited from regIOobject
bool readHeaderOk (const IOstream::streamFormat defaultFormat, const word &typeName)
 Read header, check readOpt flags and read data if necessary. More...
 
- Protected Member Functions inherited from IOobject
void setBad (const string &)
 Set the object state to bad. More...
 
template<class Type >
bool typeHeaderOk (const bool checkType)
 Read header using typeGlobalFile to find file. More...
 
- Protected Member Functions inherited from triSurface
pointFieldstoredPoints ()
 Non-const access to global points. More...
 
List< Face > & storedFaces ()
 Non-const access to the faces. More...
 
- Protected Member Functions inherited from List< T >
void size (const label)
 Override size to be inconsistent with allocated storage. More...
 

Detailed Description

A surface geometry formed of discrete facets, e.g. triangles and/or quadrilaterals, defined in a file using formats such as Wavefront OBJ, or stereolithography STL.

Usage
Property Description Required
file Name of the geometry file yes
scale Scaling factor for surface no
minQuality Threshold triangle quality no

Note: when calculating surface normal vectors, triangles are ignored with quality < minQuality.

Example specification in snappyHexMeshDict/geometry:

        type       triSurfaceMesh;
        file       "surfaceFile.obj";
Source files

Definition at line 95 of file triSurfaceMesh.H.

Constructor & Destructor Documentation

◆ triSurfaceMesh() [1/6]

triSurfaceMesh ( const IOobject io,
const triSurface s 
)

Construct from triSurface.

Definition at line 227 of file triSurfaceMesh.C.

References searchableSurface::bounds(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::points().

Here is the call graph for this function:

◆ triSurfaceMesh() [2/6]

triSurfaceMesh ( const IOobject io)

Construct read.

Definition at line 254 of file triSurfaceMesh.C.

References searchableSurface::bounds(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::points().

Here is the call graph for this function:

◆ triSurfaceMesh() [3/6]

triSurfaceMesh ( const IOobject io,
const dictionary dict 
)

Construct from IO and dictionary (used by searchableSurface).

Dictionary may contain a 'scale' entry (eg, 0.001: mm -> m)

Definition at line 283 of file triSurfaceMesh.C.

References searchableSurface::bounds(), dict, Foam::endl(), Foam::Info, IOobject::name(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::points(), and triSurface::scalePoints().

Here is the call graph for this function:

◆ triSurfaceMesh() [4/6]

triSurfaceMesh ( const IOobject io,
const bool  isGlobal 
)

Definition at line 346 of file triSurfaceMesh.C.

References searchableSurface::bounds(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::points().

Here is the call graph for this function:

◆ triSurfaceMesh() [5/6]

triSurfaceMesh ( const IOobject io,
const dictionary dict,
const bool  isGlobal 
)

◆ triSurfaceMesh() [6/6]

triSurfaceMesh ( const triSurfaceMesh )
delete

Disallow default bitwise copy construction.

◆ ~triSurfaceMesh()

~triSurfaceMesh ( )
virtual

Destructor.

Definition at line 445 of file triSurfaceMesh.C.

Member Function Documentation

◆ TypeName()

TypeName ( "triSurfaceMesh"  )

Runtime type information.

◆ clearOut()

void clearOut ( )

Clear storage.

Definition at line 451 of file triSurfaceMesh.C.

References triSurfaceRegionSearch::clearOut(), and triSurface::clearOut().

Referenced by distributedTriSurfaceMesh::clearOut().

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

◆ setPoints()

void setPoints ( const pointField newPoints)
virtual

Move points.

Reimplemented from triSurface.

Definition at line 521 of file triSurfaceMesh.C.

References triSurfaceRegionSearch::clearOut(), and triSurface::setPoints().

Here is the call graph for this function:

◆ edgeTree()

const Foam::indexedOctree< Foam::treeDataEdge > & edgeTree ( ) const

Demand driven construction of octree for boundary edges.

Definition at line 530 of file triSurfaceMesh.C.

References PatchTools::calcBounds(), Foam::e, treeBoundBox::extend(), Foam::identityMap(), nPoints, indexedOctree< Type >::perturbTol(), List< T >::size(), and Foam::Zero.

Here is the call graph for this function:

◆ regions()

const Foam::wordList & regions ( ) const
virtual

Names of regions.

Implements searchableSurface.

Definition at line 589 of file triSurfaceMesh.C.

References forAll, patches, and List< T >::setSize().

Here is the call graph for this function:

◆ hasVolumeType()

bool hasVolumeType ( ) const
virtual

Whether supports volume type below. I.e. whether is closed.

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh, and closedTriSurfaceMesh.

Definition at line 603 of file triSurfaceMesh.C.

◆ size()

virtual label size ( ) const
inlinevirtual

Range of local indices that can be returned.

Implements searchableSurface.

Definition at line 253 of file triSurfaceMesh.H.

References List< T >::size().

Here is the call graph for this function:

◆ coordinates()

Foam::tmp< Foam::pointField > coordinates ( ) const
virtual

Get representative set of element coordinates.

Usually the element centres (should be of length size()).

Implements searchableSurface.

Definition at line 461 of file triSurfaceMesh.C.

References PrimitivePatch<::Foam::List< labelledTri >, pointField >::points(), tmp< T >::ref(), and List< T >::size().

Here is the call graph for this function:

◆ boundingSpheres()

void boundingSpheres ( pointField centres,
scalarField radiusSqr 
) const
virtual

Get bounding spheres (centre and radius squared). Any point.

on surface is guaranteed to be inside.

Implements searchableSurface.

Definition at line 477 of file triSurfaceMesh.C.

References f(), forAll, Foam::magSqr(), Foam::max(), UList< T >::operator[](), PrimitivePatch<::Foam::List< labelledTri >, pointField >::points(), List< T >::setSize(), and Foam::sqr().

Here is the call graph for this function:

◆ points()

Foam::tmp< Foam::pointField > points ( ) const
virtual

Get the points that define the surface.

Implements searchableSurface.

Definition at line 505 of file triSurfaceMesh.C.

References PrimitivePatch<::Foam::List< labelledTri >, pointField >::points().

Referenced by powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), and searchableSurfaces::writeStats().

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

◆ overlaps()

bool overlaps ( const boundBox bb) const
virtual

Does any part of the surface overlap the supplied bound box?

Implements searchableSurface.

Definition at line 511 of file triSurfaceMesh.C.

References UList< T >::empty().

Here is the call graph for this function:

◆ findNearest() [1/2]

void findNearest ( const pointField sample,
const scalarField nearestDistSqr,
List< pointIndexHit > &  info 
) const
virtual

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 621 of file triSurfaceMesh.C.

References triSurfaceSearch::findNearest(), and samples().

Here is the call graph for this function:

◆ findNearest() [2/2]

void findNearest ( const pointField samples,
const scalarField nearestDistSqr,
const labelList regionIndices,
List< pointIndexHit > &  info 
) const
virtual

Find the nearest locations for the supplied points to a.

particular region in the searchable surface.

Reimplemented from searchableSurface.

Definition at line 632 of file triSurfaceMesh.C.

References triSurfaceRegionSearch::findNearest(), and samples().

Here is the call graph for this function:

◆ findLine()

void findLine ( const pointField start,
const pointField end,
List< pointIndexHit > &   
) const
virtual

Find first intersection on segment from start to end.

Note: searchableSurfacesQueries expects no intersection to be found if start==end. Is problem?

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 650 of file triSurfaceMesh.C.

References triSurfaceSearch::findLine().

Referenced by powerLawLopesdaCostaZone::powerLawLopesdaCostaZone().

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

◆ findLineAny()

void findLineAny ( const pointField start,
const pointField end,
List< pointIndexHit > &   
) const
virtual

Return any intersection on segment from start to end.

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 661 of file triSurfaceMesh.C.

References triSurfaceSearch::findLineAny().

Here is the call graph for this function:

◆ findLineAll()

void findLineAll ( const pointField start,
const pointField end,
List< List< pointIndexHit >> &  info 
) const
virtual

Get all intersections in order from start to end.

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 672 of file triSurfaceMesh.C.

References triSurfaceSearch::findLineAll().

Here is the call graph for this function:

◆ getRegion()

void getRegion ( const List< pointIndexHit > &  info,
labelList region 
) const
virtual

From a set of points and indices get the region.

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 683 of file triSurfaceMesh.C.

References forAll, UList< T >::operator[](), List< T >::setSize(), and List< T >::size().

Here is the call graph for this function:

◆ getNormal()

void getNormal ( const List< pointIndexHit > &  info,
vectorField normal 
) const
virtual

From a set of points and indices get the normal.

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 704 of file triSurfaceMesh.C.

References forAll, Foam::mag(), s(), List< T >::setSize(), List< T >::size(), and Foam::Zero.

Referenced by distributedTriSurfaceMesh::getNormal().

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

◆ getVolumeType()

void getVolumeType ( const pointField points,
List< volumeType > &  volType 
) const
virtual

Determine type (inside/outside/mixed) for point. unknown if.

cannot be determined (e.g. non-manifold surface)

Implements searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 780 of file triSurfaceMesh.C.

References forAll, indexedOctree< Type >::perturbTol(), points, List< T >::setSize(), and List< T >::size().

Here is the call graph for this function:

◆ setField()

void setField ( const labelList values)
virtual

WIP. Store element-wise field.

Reimplemented from searchableSurface.

Definition at line 811 of file triSurfaceMesh.C.

References IOobject::AUTO_WRITE, Foam::dimless, searchableSurface::geometryDir(), Foam::name(), IOobject::NO_READ, autoPtr< T >::ptr(), and objectRegistry::time().

Here is the call graph for this function:

◆ getField()

void getField ( const List< pointIndexHit > &  info,
labelList values 
) const
virtual

WIP. From a set of hits (points and.

indices) get the specified field. Misses do not get set.

Reimplemented from searchableSurface.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 837 of file triSurfaceMesh.C.

References fld(), forAll, List< T >::setSize(), and List< T >::size().

Referenced by distributedTriSurfaceMesh::getField().

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

◆ extractCloseness()

Foam::Pair< Foam::tmp< Foam::triSurfaceScalarField > > extractCloseness ( const scalar  internalAngleTolerance = degToRad(80),
const scalar  externalAngleTolerance = degToRad(80) 
) const

Return a pair of triSurfaceScalarFields representing the.

internal and external closeness of regions of the surface

Definition at line 203 of file extractCloseness.C.

References TimePaths::constant(), Foam::cos(), Foam::degToRad(), Foam::dimLength, forAll, searchableSurface::geometryDir(), IOobject::name(), List< T >::size(), and objectRegistry::time().

Here is the call graph for this function:

◆ extractPointCloseness()

Foam::Pair< Foam::tmp< Foam::triSurfacePointScalarField > > extractPointCloseness ( const scalar  internalAngleTolerance = degToRad(80),
const scalar  externalAngleTolerance = degToRad(80) 
) const

Return a pair of triSurfaceScalarPointFields representing the.

internal and external closeness of regions of the surface

Definition at line 299 of file extractCloseness.C.

References TimePaths::constant(), Foam::cos(), Foam::degToRad(), Foam::dimLength, forAll, searchableSurface::geometryDir(), n, IOobject::name(), Foam::constant::mathematical::pi(), points, List< T >::size(), and objectRegistry::time().

Here is the call graph for this function:

◆ writeData()

bool writeData ( Ostream ) const
inlinevirtual

writeData function required by regIOobject but not used

for this class, writeObject is used instead

Reimplemented from objectRegistry.

Definition at line 364 of file triSurfaceMesh.H.

References NotImplemented.

◆ writeObject()

bool writeObject ( IOstream::streamFormat  fmt,
IOstream::versionNumber  ver,
IOstream::compressionType  cmp,
const bool  write = true 
) const
virtual

Write using given format, version and compression.

Reimplemented from objectRegistry.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 863 of file triSurfaceMesh.C.

References string::expand(), fileName::isAbsolute(), Foam::isFile(), Foam::mkDir(), regIOobject::objectPath(), and fileName::path().

Here is the call graph for this function:

◆ global()

virtual bool global ( ) const
inlinevirtual

Is object global.

Reimplemented from regIOobject.

Reimplemented in distributedTriSurfaceMesh.

Definition at line 380 of file triSurfaceMesh.H.

◆ operator=()

void operator= ( const triSurfaceMesh )
delete

Disallow default bitwise assignment.


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