gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
GFace Class Referenceabstract

#include <GFace.h>

Inheritance diagram for GFace:
Collaboration diagram for GFace:

Public Member Functions

void setMeshMaster (GFace *master, const std::vector< double > &)
 
void setMeshMaster (GFace *master, const std::map< int, int > &)
 
void alignElementsWithMaster ()
 
 GFace (GModel *model, int tag)
 
virtual ~GFace ()
 
virtual void deleteMesh ()
 
void addRegion (GRegion *r)
 
void delRegion (GRegion *r)
 
GRegiongetRegion (int const num) const
 
std::size_t numRegions () const
 
std::list< GRegion * > regions () const
 
virtual bool isOrphan ()
 
void addEmbeddedVertex (GVertex *v)
 
void addEmbeddedEdge (GEdge *e)
 
virtual std::vector< int > const & orientations () const
 
int delEdge (GEdge *edge)
 
virtual std::vector< GEdge * > const & edges () const
 
void set (const std::vector< GEdge * > &f)
 
void setOrientations (const std::vector< int > &f)
 
void setEdge (GEdge *const f, int const orientation)
 
virtual std::vector< int > const & edgeOrientations () const
 
bool containsEdge (int const iEdge) const
 
void setBoundEdges (const std::vector< int > &tagEdges)
 
void setBoundEdges (const std::vector< int > &tagEdges, const std::vector< int > &signEdges)
 
std::vector< GEdge * > & embeddedEdges ()
 
std::set< GVertex *, GEntityPtrLessThan > & embeddedVertices ()
 
std::vector< GVertex * > getEmbeddedVertices (bool force=false) const
 
std::vector< GEdge * > getEmbeddedEdges (bool force=false) const
 
std::vector< MVertex * > getEmbeddedMeshVertices (bool force=false) const
 
virtual std::vector< GVertex * > vertices () const
 
virtual int dim () const
 
virtual GEntitygetParentEntity ()
 
virtual void setVisibility (char val, bool recursive=false)
 
virtual void setColor (unsigned int val, bool recursive=false)
 
void XYZtoUV (double X, double Y, double Z, double &U, double &V, double relax, bool onSurface=true, bool convTestXYZ=false) const
 
virtual SBoundingBox3d bounds (bool fast=false)
 
virtual SOrientedBoundingBox getOBB ()
 
virtual int genusGeom () const
 
virtual bool checkTopology () const
 
virtual GPoint point (double par1, double par2) const =0
 
virtual GPoint point (const SPoint2 &pt) const
 
virtual double getMetricEigenvalue (const SPoint2 &)
 
virtual void getMetricEigenVectors (const SPoint2 &param, double eigVal[2], double eigVec[4]) const
 
virtual SPoint2 parFromPoint (const SPoint3 &, bool onSurface=true, bool convTestXYZ=false) const
 
virtual bool containsParam (const SPoint2 &pt)
 
virtual GPoint closestPoint (const SPoint3 &queryPoint, const double initialGuess[2]) const
 
virtual SVector3 normal (const SPoint2 &param) const
 
virtual Pair< SVector3, SVector3firstDer (const SPoint2 &param) const =0
 
virtual void secondDer (const SPoint2 &param, SVector3 &dudu, SVector3 &dvdv, SVector3 &dudv) const =0
 
double curvature (const SPoint2 &param) const
 
virtual double curvatureDiv (const SPoint2 &param) const
 
virtual double curvatureMax (const SPoint2 &param) const
 
virtual double curvatures (const SPoint2 &param, SVector3 &dirMax, SVector3 &dirMin, double &curvMax, double &curvMin) const
 
virtual std::string getAdditionalInfoString (bool multline=false)
 
virtual void writeGEO (FILE *fp)
 
virtual void writePY (FILE *fp)
 
virtual bool buildRepresentationCross (bool force=false)
 
virtual bool buildSTLTriangulation (bool force=false)
 
bool fillVertexArray (bool force=false)
 
bool storeSTLAsMesh ()
 
void computeMeanPlane (const std::vector< MVertex * > &points)
 
void computeMeanPlane (const std::vector< SPoint3 > &points)
 
void computeMeanPlane ()
 
void getMeanPlaneData (double VX[3], double VY[3], double &x, double &y, double &z) const
 
void getMeanPlaneData (double plan[3][3]) const
 
virtual void getElementTypes (std::vector< int > &types) const
 
std::size_t getNumMeshElements () const
 
std::size_t getNumMeshElementsByType (const int familyType) const
 
std::size_t getNumMeshParentElements ()
 
void getNumMeshElements (unsigned *const c) const
 
MElement *const * getStartElementType (int type) const
 
MElementgetMeshElement (std::size_t index) const
 
MElementgetMeshElementByType (const int familyType, const std::size_t index) const
 
virtual void resetMeshAttributes ()
 
void moveToValidRange (SPoint2 &pt) const
 
void computeMeshSizeFieldAccuracy (double &avg, double &max_e, double &min_e, int &nE, int &GS)
 
bool fillPointCloud (double maxDist, std::vector< SPoint3 > *points, std::vector< SPoint2 > *uvpoints=nullptr, std::vector< SVector3 > *normals=nullptr)
 
virtual bool isSphere (double &radius, SPoint3 &center) const
 
virtual void mesh (bool verbose)
 
int getMeshingAlgo () const
 
void setMeshingAlgo (int val)
 
void unsetMeshingAlgo ()
 
int getMeshSizeFromBoundary () const
 
void setMeshSizeFromBoundary (int val)
 
virtual double getMeshSize () const
 
virtual double getMeshSizeFactor () const
 
void relocateMeshVertices ()
 
void addTriangle (MTriangle *t)
 
void addQuadrangle (MQuadrangle *q)
 
void addPolygon (MPolygon *p)
 
void addElement (int type, MElement *e)
 
void removeElement (int type, MElement *e)
 
void removeElements (int type)
 
BoundaryLayerColumnsgetColumns ()
 
virtual bool reorder (const int elementType, const std::vector< std::size_t > &ordering)
 
virtual bool isFullyDiscrete ()
 
- Public Member Functions inherited from GEntity
void addVerticesInSet (std::set< MVertex * > &, bool closure) const
 
virtual std::string getTypeString ()
 
 GEntity (GModel *m, int t)
 
virtual ~GEntity ()
 
void deleteVertexArrays ()
 
virtual std::vector< GFace * > faces () const
 
std::vector< GRegion * > bindingsGetRegions ()
 
std::vector< GFace * > bindingsGetFaces ()
 
std::vector< GEdge * > bindingsGetEdges () const
 
std::vector< GVertex * > bindingsGetVertices ()
 
virtual GeomType geomType () const
 
virtual bool continuous (int dim) const
 
virtual bool periodic (int dim) const
 
virtual double period (int dim) const
 
virtual bool degenerate (int dim) const
 
virtual bool haveParametrization ()
 
virtual Range< double > parBounds (int i) const
 
virtual double tolerance () const
 
virtual bool containsPoint (const SPoint3 &pt) const
 
virtual ModelType getNativeType () const
 
virtual void * getNativePtr () const
 
virtual int getNativeInt () const
 
GModelmodel () const
 
int tag () const
 
void setTag (int tag)
 
virtual void addPhysicalEntity (int physicalTag)
 
virtual std::vector< int > getPhysicalEntities ()
 
GEntitygetMeshMaster () const
 
void setMeshMaster (GEntity *)
 
void setMeshMaster (GEntity *, const std::vector< double > &, bool updateCorrespondingVertices=true)
 
void updateCorrespondingVertices ()
 
void copyMasterCoordinates ()
 
virtual char getVisibility ()
 
virtual char getSelection ()
 
virtual void setSelection (char val)
 
virtual unsigned int getColor ()
 
virtual void setColor (unsigned color, bool recursive=false)
 
virtual bool useColor ()
 
virtual std::string getInfoString (bool additional=true, bool multiline=false)
 
bool getAllElementsVisible ()
 
void setAllElementsVisible (bool val)
 
std::size_t getNumMeshVertices ()
 
MVertexgetMeshVertex (std::size_t index)
 
void addMeshVertex (MVertex *v)
 
void removeMeshVertex (MVertex *v)
 
GVertexcast2Vertex ()
 
GEdgecast2Edge ()
 
GFacecast2Face ()
 
GRegioncast2Region ()
 

Public Attributes

std::vector< GEdgeLoopedgeLoops
 
std::map< GEdge *, std::pair< GEdge *, int > > edgeCounterparts
 
struct {
   int   recombine
 
   double   recombineAngle
 
   char   method
 
   std::vector< GVertex * >   corners
 
   int   transfiniteArrangement
 
   int   transfiniteSmoothing
 
   ExtrudeParams *   extrude
 
   bool   reverseMesh
 
   double   meshSize
 
   double   meshSizeFactor
 
   int   algorithm
 
   int   meshSizeFromBoundary
 
   bool   transfinite3
 
meshAttributes
 
struct {
   GEntity::MeshGenerationStatus   status
 
   bool   refineAllEdges
 
   double   worst_element_shape
 
   double   best_element_shape
 
   double   average_element_shape
 
   double   smallest_edge_length
 
   double   longest_edge_length
 
   double   efficiency_index
 
   int   nbEdge
 
   int   nbTriangle
 
   int   nbGoodQuality
 
   int   nbGoodLength
 
meshStatistics
 
std::vector< std::vector< SPoint3 > > cross [2]
 
std::vector< SPoint2stl_vertices_uv
 
std::vector< SPoint3stl_vertices_xyz
 
std::vector< SVector3stl_normals
 
std::vector< SVector3stl_curvatures
 
std::vector< int > stl_triangles
 
VertexArrayva_geom_triangles
 
std::vector< std::vector< MVertex * > > transfinite_vertices
 
std::set< MVertex * > constr_vertices
 
std::vector< MTriangle * > triangles
 
std::vector< MQuadrangle * > quadrangles
 
std::vector< MPolygon * > polygons
 
GFacecompoundSurface
 
std::vector< SPoint3storage1
 
std::vector< SVector3storage2
 
std::vector< SVector3storage3
 
std::vector< double > storage4
 
- Public Attributes inherited from GEntity
std::vector< MVertex * > mesh_vertices
 
std::vector< GEntity * > compound
 
std::map< GVertex *, GVertex * > vertexCounterparts
 
std::vector< int > physicals
 
VertexArrayva_lines
 
VertexArrayva_triangles
 
std::set< MElement * > curvedBLElements
 
std::vector< double > affineTransform
 
std::map< MVertex *, MVertex * > correspondingVertices
 
std::map< MVertex *, MVertex * > correspondingHighOrderVertices
 

Protected Attributes

std::vector< GEdge * > l_edges
 
std::vector< int > l_dirs
 
GRegionr1
 
GRegionr2
 
mean_plane meanPlane
 
std::vector< GEdge * > embedded_edges
 
std::set< GVertex *, GEntityPtrLessThanembedded_vertices
 
BoundaryLayerColumns _columns
 
- Protected Attributes inherited from GEntity
SOrientedBoundingBox_obb
 

Additional Inherited Members

- Public Types inherited from GEntity
enum  ModelType {
  UnknownModel, GmshModel, OpenCascadeModel, AcisModel,
  ParasolidModel
}
 
enum  GeomType {
  Unknown, Point, BoundaryLayerPoint, Line,
  Circle, Ellipse, Conic, Parabola,
  Hyperbola, TrimmedCurve, OffsetCurve, BSpline,
  Bezier, ParametricCurve, BoundaryLayerCurve, DiscreteCurve,
  Plane, Nurb, Cylinder, Sphere,
  Cone, Torus, RuledSurface, ParametricSurface,
  BSplineSurface, BezierSurface, SurfaceOfRevolution, BoundaryLayerSurface,
  DiscreteSurface, DiscreteDiskSurface, Volume, DiscreteVolume,
  PartitionPoint, PartitionCurve, PartitionSurface, PartitionVolume,
  GhostCurve, GhostSurface, GhostVolume
}
 
enum  MeshGenerationStatus { PENDING, DONE, FAILED }
 

Detailed Description

Definition at line 32 of file GFace.h.

Constructor & Destructor Documentation

◆ GFace()

GFace::GFace ( GModel model,
int  tag 
)

Definition at line 44 of file GFace.cpp.

Here is the call graph for this function:

◆ ~GFace()

GFace::~GFace ( )
virtual

Definition at line 52 of file GFace.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ addElement()

void GFace::addElement ( int  type,
MElement e 
)
virtual

Reimplemented from GEntity.

Definition at line 2739 of file GFace.cpp.

Referenced by ghostFace::addElement().

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

◆ addEmbeddedEdge()

void GFace::addEmbeddedEdge ( GEdge e)
inline

Definition at line 108 of file GFace.h.

Referenced by addEmbedded().

Here is the caller graph for this function:

◆ addEmbeddedVertex()

void GFace::addEmbeddedVertex ( GVertex v)
inline

Definition at line 104 of file GFace.h.

Referenced by addEmbedded().

Here is the caller graph for this function:

◆ addPolygon()

void GFace::addPolygon ( MPolygon p)
inline

Definition at line 444 of file GFace.h.

Referenced by addElement(), and ghostFace::addPolygon().

Here is the caller graph for this function:

◆ addQuadrangle()

void GFace::addQuadrangle ( MQuadrangle q)
inline

Definition at line 440 of file GFace.h.

Referenced by addElement(), and ghostFace::addQuadrangle().

Here is the caller graph for this function:

◆ addRegion()

void GFace::addRegion ( GRegion r)
inline

Definition at line 69 of file GFace.h.

Referenced by GRegion::setBoundFaces().

Here is the caller graph for this function:

◆ addTriangle()

void GFace::addTriangle ( MTriangle t)
inline

Definition at line 436 of file GFace.h.

Referenced by addElement(), and ghostFace::addTriangle().

Here is the caller graph for this function:

◆ alignElementsWithMaster()

void GFace::alignElementsWithMaster ( )
virtual

Reimplemented from GEntity.

Definition at line 2879 of file GFace.cpp.

Here is the call graph for this function:

◆ bounds()

SBoundingBox3d GFace::bounds ( bool  fast = false)
virtual

Reimplemented from GEntity.

Reimplemented in discreteFace.

Definition at line 273 of file GFace.cpp.

Referenced by discreteFace::bounds(), buildRepresentationCross(), computeMeanPlane(), and fillPointCloud().

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

◆ buildRepresentationCross()

bool GFace::buildRepresentationCross ( bool  force = false)
virtual

Definition at line 1427 of file GFace.cpp.

Here is the call graph for this function:

◆ buildSTLTriangulation()

bool GFace::buildSTLTriangulation ( bool  force = false)
virtual

Definition at line 1585 of file GFace.cpp.

Referenced by fillPointCloud(), fillVertexArray(), getOBB(), SurfaceProjector::initialize(), and GRegion::setOutwardOrientationMeshConstraint().

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

◆ checkTopology()

virtual bool GFace::checkTopology ( ) const
inlinevirtual

Definition at line 204 of file GFace.h.

◆ closestPoint()

◆ computeMeanPlane() [1/3]

void GFace::computeMeanPlane ( )

Definition at line 645 of file GFace.cpp.

Referenced by computeMeanPlane(), and gmshFace::resetNativePtr().

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

◆ computeMeanPlane() [2/3]

void GFace::computeMeanPlane ( const std::vector< MVertex * > &  points)

Definition at line 756 of file GFace.cpp.

Referenced by Mesh2DWithBoundaryLayers().

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

◆ computeMeanPlane() [3/3]

void GFace::computeMeanPlane ( const std::vector< SPoint3 > &  points)

Definition at line 764 of file GFace.cpp.

Here is the call graph for this function:

◆ computeMeshSizeFieldAccuracy()

void GFace::computeMeshSizeFieldAccuracy ( double &  avg,
double &  max_e,
double &  min_e,
int &  nE,
int &  GS 
)

Definition at line 922 of file GFace.cpp.

Here is the call graph for this function:

◆ containsEdge()

bool GFace::containsEdge ( int const  iEdge) const
inline

Definition at line 144 of file GFace.h.

◆ containsParam()

bool GFace::containsParam ( const SPoint2 pt)
virtual

Reimplemented in discreteFace.

Definition at line 1403 of file GFace.cpp.

Referenced by buildRepresentationCross().

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

◆ curvature()

double GFace::curvature ( const SPoint2 param) const
inline

Definition at line 247 of file GFace.h.

Here is the call graph for this function:

◆ curvatureDiv()

double GFace::curvatureDiv ( const SPoint2 param) const
virtual

Definition at line 962 of file GFace.cpp.

Referenced by curvatures().

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

◆ curvatureMax()

double GFace::curvatureMax ( const SPoint2 param) const
virtual

Reimplemented in discreteFace.

Definition at line 1020 of file GFace.cpp.

Referenced by curvature(), and LC_MVertex_CURV().

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

◆ curvatures()

double GFace::curvatures ( const SPoint2 param,
SVector3 dirMax,
SVector3 dirMin,
double &  curvMax,
double &  curvMin 
) const
virtual

Reimplemented in discreteFace.

Definition at line 1031 of file GFace.cpp.

Referenced by metric_based_on_surface_curvature(), and BoundaryLayerField::operator()().

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

◆ delEdge()

int GFace::delEdge ( GEdge edge)

Definition at line 86 of file GFace.cpp.

Here is the call graph for this function:

◆ deleteMesh()

void GFace::deleteMesh ( )
virtual

Reimplemented from GEntity.

Definition at line 160 of file GFace.cpp.

Referenced by deMeshGFace::operator()(), and ~GFace().

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

◆ delRegion()

void GFace::delRegion ( GRegion r)
inline

Definition at line 75 of file GFace.h.

◆ dim()

virtual int GFace::dim ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 175 of file GFace.h.

Referenced by closestPoint().

Here is the caller graph for this function:

◆ edgeOrientations()

virtual std::vector<int> const& GFace::edgeOrientations ( ) const
inlinevirtual

Definition at line 139 of file GFace.h.

Referenced by ExtrudeSurface(), and GModel::getBoundaryTags().

Here is the caller graph for this function:

◆ edges()

◆ embeddedEdges()

std::vector<GEdge *>& GFace::embeddedEdges ( )
inline

Definition at line 156 of file GFace.h.

Referenced by copyMesh(), removeEmbedded(), setMeshMaster(), and BoundaryLayerField::setupFor2d().

Here is the caller graph for this function:

◆ embeddedVertices()

std::set<GVertex *, GEntityPtrLessThan>& GFace::embeddedVertices ( )
inline

Definition at line 160 of file GFace.h.

Referenced by copyMesh(), removeEmbedded(), and setMeshMaster().

Here is the caller graph for this function:

◆ fillPointCloud()

bool GFace::fillPointCloud ( double  maxDist,
std::vector< SPoint3 > *  points,
std::vector< SPoint2 > *  uvpoints = nullptr,
std::vector< SVector3 > *  normals = nullptr 
)

Definition at line 1782 of file GFace.cpp.

Here is the call graph for this function:

◆ fillVertexArray()

bool GFace::fillVertexArray ( bool  force = false)

Definition at line 1656 of file GFace.cpp.

Here is the call graph for this function:

◆ firstDer()

virtual Pair<SVector3, SVector3> GFace::firstDer ( const SPoint2 param) const
pure virtual

◆ genusGeom()

int GFace::genusGeom ( ) const
virtual

Definition at line 1763 of file GFace.cpp.

◆ getAdditionalInfoString()

std::string GFace::getAdditionalInfoString ( bool  multline = false)
virtual

Reimplemented from GEntity.

Definition at line 434 of file GFace.cpp.

Here is the call graph for this function:

◆ getColumns()

BoundaryLayerColumns* GFace::getColumns ( )
inline

◆ getElementTypes()

virtual void GFace::getElementTypes ( std::vector< int > &  types) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 295 of file GFace.h.

◆ getEmbeddedEdges()

std::vector< GEdge * > GFace::getEmbeddedEdges ( bool  force = false) const

◆ getEmbeddedMeshVertices()

std::vector< MVertex * > GFace::getEmbeddedMeshVertices ( bool  force = false) const

Definition at line 369 of file GFace.cpp.

Referenced by copyMesh(), extrudeMesh(), and MeshExtrudedSurface().

Here is the caller graph for this function:

◆ getEmbeddedVertices()

std::vector< GVertex * > GFace::getEmbeddedVertices ( bool  force = false) const

Definition at line 355 of file GFace.cpp.

Referenced by buildMeshGenerationDataStructures(), getNodeCopies(), meshGenerator(), meshGeneratorPeriodic(), and refineMeshBDS().

Here is the caller graph for this function:

◆ getMeanPlaneData() [1/2]

void GFace::getMeanPlaneData ( double  plan[3][3]) const

Definition at line 915 of file GFace.cpp.

◆ getMeanPlaneData() [2/2]

void GFace::getMeanPlaneData ( double  VX[3],
double  VY[3],
double &  x,
double &  y,
double &  z 
) const

Definition at line 902 of file GFace.cpp.

Referenced by gmshFace::closestPoint(), gmshFace::firstDer(), gmshFace::parFromPoint(), and gmshFace::point().

Here is the caller graph for this function:

◆ getMeshElement()

◆ getMeshElementByType()

MElement * GFace::getMeshElementByType ( const int  familyType,
const std::size_t  index 
) const
virtual

Reimplemented from GEntity.

Definition at line 245 of file GFace.cpp.

◆ getMeshingAlgo()

int GFace::getMeshingAlgo ( ) const

Definition at line 63 of file GFace.cpp.

Referenced by algoDelaunay2D(), meshGenerator(), meshGeneratorPeriodic(), and meshGFace::operator()().

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

◆ getMeshSize()

virtual double GFace::getMeshSize ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 384 of file GFace.h.

◆ getMeshSizeFactor()

virtual double GFace::getMeshSizeFactor ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 388 of file GFace.h.

◆ getMeshSizeFromBoundary()

int GFace::getMeshSizeFromBoundary ( ) const

Definition at line 71 of file GFace.cpp.

Referenced by Extend1dMeshIn2dSurfaces().

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

◆ getMetricEigenvalue()

double GFace::getMetricEigenvalue ( const SPoint2 )
virtual

Reimplemented in gmshFace.

Definition at line 1066 of file GFace.cpp.

Here is the call graph for this function:

◆ getMetricEigenVectors()

void GFace::getMetricEigenVectors ( const SPoint2 param,
double  eigVal[2],
double  eigVec[4] 
) const
virtual

Definition at line 1074 of file GFace.cpp.

Referenced by curvatureMax(), and curvatures().

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

◆ getNumMeshElements() [1/2]

◆ getNumMeshElements() [2/2]

void GFace::getNumMeshElements ( unsigned *const  c) const
virtual

Reimplemented from GEntity.

Definition at line 207 of file GFace.cpp.

Here is the call graph for this function:

◆ getNumMeshElementsByType()

std::size_t GFace::getNumMeshElementsByType ( const int  familyType) const
virtual

Reimplemented from GEntity.

Definition at line 186 of file GFace.cpp.

◆ getNumMeshParentElements()

std::size_t GFace::getNumMeshParentElements ( )
virtual

Reimplemented from GEntity.

Definition at line 198 of file GFace.cpp.

◆ getOBB()

SOrientedBoundingBox GFace::getOBB ( )
virtual

Reimplemented from GEntity.

Definition at line 292 of file GFace.cpp.

Referenced by GeomMeshMatcher::matchFaces().

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

◆ getParentEntity()

virtual GEntity* GFace::getParentEntity ( )
inlinevirtual

Reimplemented from GEntity.

Reimplemented in partitionFace.

Definition at line 181 of file GFace.h.

◆ getRegion()

GRegion* GFace::getRegion ( int const  num) const
inline

Definition at line 81 of file GFace.h.

Referenced by FindConnectedRegions(), and regions().

Here is the caller graph for this function:

◆ getStartElementType()

MElement *const * GFace::getStartElementType ( int  type) const
virtual

Reimplemented from GEntity.

Definition at line 214 of file GFace.cpp.

◆ isFullyDiscrete()

bool GFace::isFullyDiscrete ( )
virtual

Reimplemented from GEntity.

Definition at line 2945 of file GFace.cpp.

Referenced by deMeshGFace::operator()(), and orientMeshGFace::operator()().

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

◆ isOrphan()

bool GFace::isOrphan ( )
virtual

Reimplemented from GEntity.

Definition at line 79 of file GFace.cpp.

Here is the call graph for this function:

◆ isSphere()

virtual bool GFace::isSphere ( double &  radius,
SPoint3 center 
) const
inlinevirtual

Definition at line 333 of file GFace.h.

Referenced by SurfaceProjector::setAnalyticalProjection().

Here is the caller graph for this function:

◆ mesh()

void GFace::mesh ( bool  verbose)
virtual

Reimplemented from GEntity.

Reimplemented in discreteFace.

Definition at line 2142 of file GFace.cpp.

Referenced by computeNodalSizes(), correctLC_(), edgeSwapTest(), and discreteFace::mesh().

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

◆ moveToValidRange()

void GFace::moveToValidRange ( SPoint2 pt) const

Definition at line 2186 of file GFace.cpp.

Here is the call graph for this function:

◆ normal()

SVector3 GFace::normal ( const SPoint2 param) const
virtual

Reimplemented in discreteFace, xyFace, and gmshFace.

Definition at line 1416 of file GFace.cpp.

Referenced by _cos_N(), curvatureDiv(), fillPointCloud(), fillVertexArray(), getGFaceNormalFromBary(), getGFaceNormalFromVert(), and TRIANGLE_VALIDITY().

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

◆ numRegions()

std::size_t GFace::numRegions ( ) const
inline

Definition at line 87 of file GFace.h.

Referenced by regions().

Here is the caller graph for this function:

◆ orientations()

virtual std::vector<int> const& GFace::orientations ( ) const
inlinevirtual

Definition at line 114 of file GFace.h.

Referenced by computeEdgeLoops(), and writeGEO().

Here is the caller graph for this function:

◆ parFromPoint()

SPoint2 GFace::parFromPoint ( const SPoint3 p,
bool  onSurface = true,
bool  convTestXYZ = false 
) const
virtual

Reimplemented in xyFace, discreteFace, and gmshFace.

Definition at line 1254 of file GFace.cpp.

Referenced by buildRepresentationCross(), closestPoint(), copyMesh(), extrudeMesh(), getAllParameters(), gmshFace::parFromPoint(), relocateSlaveVertices(), reparamMeshEdgeOnFace(), reparamMeshVertexOnFace(), GVertex::reparamOnFace(), and GEdge::reparamOnFace().

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

◆ point() [1/2]

virtual GPoint GFace::point ( const SPoint2 pt) const
inlinevirtual

Definition at line 211 of file GFace.h.

Here is the call graph for this function:

◆ point() [2/2]

◆ regions()

std::list<GRegion *> GFace::regions ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 92 of file GFace.h.

Referenced by isOrphan(), and skipFace().

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

◆ relocateMeshVertices()

void GFace::relocateMeshVertices ( )
virtual

Reimplemented from GEntity.

Definition at line 2206 of file GFace.cpp.

Here is the call graph for this function:

◆ removeElement()

void GFace::removeElement ( int  type,
MElement e 
)
virtual

Reimplemented from GEntity.

Definition at line 2757 of file GFace.cpp.

Here is the call graph for this function:

◆ removeElements()

void GFace::removeElements ( int  type)
virtual

Reimplemented from GEntity.

Definition at line 2787 of file GFace.cpp.

Here is the call graph for this function:

◆ reorder()

bool GFace::reorder ( const int  elementType,
const std::vector< std::size_t > &  ordering 
)
virtual

Reimplemented from GEntity.

Definition at line 2805 of file GFace.cpp.

◆ resetMeshAttributes()

void GFace::resetMeshAttributes ( )
virtual

Reimplemented from GEntity.

Reimplemented in discreteFace, and gmshFace.

Definition at line 257 of file GFace.cpp.

Referenced by GFace(), and discreteFace::resetMeshAttributes().

Here is the caller graph for this function:

◆ secondDer()

virtual void GFace::secondDer ( const SPoint2 param,
SVector3 dudu,
SVector3 dvdv,
SVector3 dudv 
) const
pure virtual

Implemented in discreteFace, xyFace, and gmshFace.

Referenced by curvatureDiv(), and getMetricEigenVectors().

Here is the caller graph for this function:

◆ set()

void GFace::set ( const std::vector< GEdge * > &  f)
inline

Definition at line 125 of file GFace.h.

Referenced by createTopologyFromMesh2D(), and meshGenerator().

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

◆ setBoundEdges() [1/2]

void GFace::setBoundEdges ( const std::vector< int > &  tagEdges)

Definition at line 113 of file GFace.cpp.

Referenced by classifyFaces(), and setBoundEdges().

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

◆ setBoundEdges() [2/2]

void GFace::setBoundEdges ( const std::vector< int > &  tagEdges,
const std::vector< int > &  signEdges 
)

Definition at line 134 of file GFace.cpp.

Here is the call graph for this function:

◆ setColor()

void GFace::setColor ( unsigned int  val,
bool  recursive = false 
)
virtual

Definition at line 420 of file GFace.cpp.

Here is the call graph for this function:

◆ setEdge()

void GFace::setEdge ( GEdge *const  f,
int const  orientation 
)
inline

Definition at line 133 of file GFace.h.

Here is the call graph for this function:

◆ setMeshingAlgo()

void GFace::setMeshingAlgo ( int  val)
inline

Definition at line 371 of file GFace.h.

Referenced by meshGFace::operator()().

Here is the caller graph for this function:

◆ setMeshMaster() [1/2]

void GFace::setMeshMaster ( GFace master,
const std::map< int, int > &  edgeCopies 
)

Definition at line 2542 of file GFace.cpp.

Here is the call graph for this function:

◆ setMeshMaster() [2/2]

void GFace::setMeshMaster ( GFace master,
const std::vector< double > &  tfo 
)

Definition at line 2222 of file GFace.cpp.

Referenced by addPeriodicFace(), MeshExtrudedSurface(), and setMeshMaster().

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

◆ setMeshSizeFromBoundary()

void GFace::setMeshSizeFromBoundary ( int  val)
inline

Definition at line 380 of file GFace.h.

◆ setOrientations()

void GFace::setOrientations ( const std::vector< int > &  f)
inline

Definition at line 129 of file GFace.h.

Here is the call graph for this function:

◆ setVisibility()

void GFace::setVisibility ( char  val,
bool  recursive = false 
)
virtual

Reimplemented from GEntity.

Definition at line 406 of file GFace.cpp.

Here is the call graph for this function:

◆ storeSTLAsMesh()

bool GFace::storeSTLAsMesh ( )

Definition at line 1729 of file GFace.cpp.

Here is the call graph for this function:

◆ unsetMeshingAlgo()

void GFace::unsetMeshingAlgo ( )
inline

Definition at line 375 of file GFace.h.

◆ vertices()

std::vector< GVertex * > GFace::vertices ( ) const
virtual

Reimplemented from GEntity.

Definition at line 390 of file GFace.cpp.

Referenced by computeMeanPlane(), copyMesh(), extrudeInfo::fillExtrudeParams(), GModel::getBoundaryTags(), and getOBB().

Here is the caller graph for this function:

◆ writeGEO()

void GFace::writeGEO ( FILE *  fp)
virtual

Definition at line 530 of file GFace.cpp.

Here is the call graph for this function:

◆ writePY()

void GFace::writePY ( FILE *  fp)
virtual

Definition at line 597 of file GFace.cpp.

Here is the call graph for this function:

◆ XYZtoUV()

void GFace::XYZtoUV ( double  X,
double  Y,
double  Z,
double &  U,
double &  V,
double  relax,
bool  onSurface = true,
bool  convTestXYZ = false 
) const

Definition at line 1144 of file GFace.cpp.

Referenced by MeshTransfiniteSurface(), and parFromPoint().

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

Member Data Documentation

◆ _columns

BoundaryLayerColumns GFace::_columns
protected

Definition at line 44 of file GFace.h.

Referenced by getColumns().

◆ algorithm

int GFace::algorithm

Definition at line 363 of file GFace.h.

Referenced by QuadqsContextUpdater::QuadqsContextUpdater().

◆ average_element_shape

double GFace::average_element_shape

◆ best_element_shape

double GFace::best_element_shape

◆ compoundSurface

GFace* GFace::compoundSurface

Definition at line 434 of file GFace.h.

Referenced by MeshDelaunayVolume().

◆ constr_vertices

std::set<MVertex *> GFace::constr_vertices

Definition at line 423 of file GFace.h.

◆ corners

std::vector<GVertex *> GFace::corners

◆ cross

std::vector<std::vector<SPoint3> > GFace::cross[2]

Definition at line 405 of file GFace.h.

Referenced by buildRepresentationCross().

◆ edgeCounterparts

std::map<GEdge *, std::pair<GEdge *, int> > GFace::edgeCounterparts

Definition at line 50 of file GFace.h.

Referenced by copyMesh(), and setMeshMaster().

◆ edgeLoops

std::vector<GEdgeLoop> GFace::edgeLoops

Definition at line 47 of file GFace.h.

Referenced by meshGeneratorPeriodic(), gmshFace::resetNativePtr(), and writePY().

◆ efficiency_index

double GFace::efficiency_index

Definition at line 398 of file GFace.h.

◆ embedded_edges

std::vector<GEdge *> GFace::embedded_edges
protected

◆ embedded_vertices

◆ extrude

◆ l_dirs

std::vector<int> GFace::l_dirs
protected

◆ l_edges

◆ longest_edge_length

double GFace::longest_edge_length

Definition at line 398 of file GFace.h.

◆ meanPlane

mean_plane GFace::meanPlane
protected

◆ meshAttributes

◆ meshSize

double GFace::meshSize

Definition at line 361 of file GFace.h.

Referenced by QuadqsContextUpdater::QuadqsContextUpdater().

◆ meshSizeFactor

double GFace::meshSizeFactor

Definition at line 361 of file GFace.h.

Referenced by QuadqsContextUpdater::QuadqsContextUpdater().

◆ meshSizeFromBoundary

int GFace::meshSizeFromBoundary

Definition at line 365 of file GFace.h.

Referenced by QuadqsContextUpdater::QuadqsContextUpdater().

◆ meshStatistics

◆ method

◆ nbEdge

int GFace::nbEdge

Definition at line 399 of file GFace.h.

Referenced by deMeshGFace::operator()().

◆ nbGoodLength

int GFace::nbGoodLength

Definition at line 400 of file GFace.h.

◆ nbGoodQuality

int GFace::nbGoodQuality

◆ nbTriangle

int GFace::nbTriangle

◆ polygons

◆ quadrangles

◆ r1

GRegion* GFace::r1
protected

Definition at line 39 of file GFace.h.

Referenced by addRegion(), delRegion(), getAdditionalInfoString(), getRegion(), and numRegions().

◆ r2

GRegion * GFace::r2
protected

Definition at line 39 of file GFace.h.

Referenced by addRegion(), delRegion(), getAdditionalInfoString(), getRegion(), and numRegions().

◆ recombine

◆ recombineAngle

double GFace::recombineAngle

Definition at line 346 of file GFace.h.

Referenced by _recombineIntoQuads(), and QuadqsContextUpdater::QuadqsContextUpdater().

◆ refineAllEdges

bool GFace::refineAllEdges

Definition at line 396 of file GFace.h.

Referenced by meshGenerator(), and meshGeneratorPeriodic().

◆ reverseMesh

◆ smallest_edge_length

double GFace::smallest_edge_length

Definition at line 398 of file GFace.h.

◆ status

◆ stl_curvatures

◆ stl_normals

std::vector<SVector3> GFace::stl_normals

Definition at line 410 of file GFace.h.

Referenced by discreteFace::_computeSTLNormals(), and fillVertexArray().

◆ stl_triangles

◆ stl_vertices_uv

◆ stl_vertices_xyz

◆ storage1

std::vector<SPoint3> GFace::storage1

Definition at line 458 of file GFace.h.

Referenced by directions_storage().

◆ storage2

std::vector<SVector3> GFace::storage2

Definition at line 459 of file GFace.h.

Referenced by directions_storage().

◆ storage3

std::vector<SVector3> GFace::storage3

Definition at line 460 of file GFace.h.

Referenced by directions_storage().

◆ storage4

std::vector<double> GFace::storage4

Definition at line 461 of file GFace.h.

Referenced by directions_storage().

◆ transfinite3

bool GFace::transfinite3

Definition at line 367 of file GFace.h.

Referenced by MeshTransfiniteSurface().

◆ transfinite_vertices

std::vector<std::vector<MVertex *> > GFace::transfinite_vertices

◆ transfiniteArrangement

int GFace::transfiniteArrangement

Definition at line 353 of file GFace.h.

Referenced by MeshTransfiniteSurface(), and QuadqsContextUpdater::QuadqsContextUpdater().

◆ transfiniteSmoothing

int GFace::transfiniteSmoothing

Definition at line 355 of file GFace.h.

Referenced by MeshTransfiniteSurface(), and QuadqsContextUpdater::QuadqsContextUpdater().

◆ triangles

std::vector<MTriangle *> GFace::triangles

Definition at line 428 of file GFace.h.

Referenced by _recombineIntoQuads(), _removeDiamonds(), _removeTwoQuadsNodes(), quadMeshRemoveHalfOfOneDMesh::_subdivide(), addTriangle(), addTriangle(), assignFace(), backgroundMesh::backgroundMesh(), BarycentricRefineMesh(), BDS2GMSH(), buildBackgroundMesh(), buildEdgeToElement(), buildMeshGenerationDataStructures(), buildSTLTriangulation(), classifyFaces(), computeDiscreteCurvatures(), computeElementShapes(), computeEquivalences(), computeEquivalentTriangles(), copy_elements(), copyMesh(), discreteFace::createGeometry(), createTopologyFromMesh3D(), deleteMesh(), deleteUnusedVertices(), GMSH_CrackPlugin::execute(), extrudeMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), GFaceDelaunayRefinementOldMesher(), insertVerticesInRegion(), isMeshValid(), laplaceSmoothing(), meshGenerator(), meshGeneratorPeriodic(), MeshTransfiniteSurface(), meshGFace::operator()(), optimize1DMeshAtAcuteCorners(), phase1(), phase2(), phase3(), PolyMesh2GFace(), backgroundMesh::print(), printStats(), backgroundMesh::propagateCrossField(), propagateValuesOnFace(), quadsToTriangles(), GModel::readOFF(), ExtendField::recomputeSurfaces(), RelocateVertices(), removeElement(), removeElements(), reorder(), setHighOrder(), storeSTLAsMesh(), Subdivide(), SubdivideExtrudedMesh(), SurfaceProjector::SurfaceProjector(), transferDataStructure(), transferSeamGEdgesVerticesToGFace(), GModel::writeOFF(), and ghostFace::~ghostFace().

◆ va_geom_triangles

VertexArray* GFace::va_geom_triangles

Definition at line 416 of file GFace.h.

Referenced by fillVertexArray(), and ~GFace().

◆ worst_element_shape

double GFace::worst_element_shape

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