gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
MFace Class Reference

#include <MFace.h>

Public Member Functions

 MFace ()
 
 MFace (MVertex *v0, MVertex *v1, MVertex *v2, MVertex *v3=nullptr)
 
 MFace (const std::vector< MVertex * > &v)
 
std::size_t getNumVertices () const
 
MVertexgetVertex (std::size_t i) const
 
MVertexgetSortedVertex (std::size_t i) const
 
MEdge getEdge (std::size_t i) const
 
void getOrientationFlagForFace (std::vector< int > &faceOrientationFlag)
 
bool computeCorrespondence (const MFace &, int &, bool &) const
 
void getOrderedVertices (std::vector< MVertex * > &verts) const
 
void getOrderedVertices (const MVertex **const verts) const
 
double approximateArea () const
 
SVector3 normal () const
 
SVector3 tangent (int num) const
 
SPoint3 barycenter () const
 
SPoint3 interpolate (const double &u, const double &v) const
 

Private Attributes

std::vector< MVertex * > _v
 
std::vector< char > _si
 

Detailed Description

Definition at line 20 of file MFace.h.

Constructor & Destructor Documentation

◆ MFace() [1/3]

MFace::MFace ( )
inline

Definition at line 26 of file MFace.h.

◆ MFace() [2/3]

MFace::MFace ( MVertex v0,
MVertex v1,
MVertex v2,
MVertex v3 = nullptr 
)

Definition at line 68 of file MFace.cpp.

Here is the call graph for this function:

◆ MFace() [3/3]

MFace::MFace ( const std::vector< MVertex * > &  v)

Definition at line 78 of file MFace.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ approximateArea()

double MFace::approximateArea ( ) const

Definition at line 195 of file MFace.cpp.

Referenced by _relocateVertexOfPyramid().

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

◆ barycenter()

SPoint3 MFace::barycenter ( ) const
inline

Definition at line 65 of file MFace.h.

Referenced by _relocateVertexOfPyramid(), and Subdivide().

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

◆ computeCorrespondence()

bool MFace::computeCorrespondence ( const MFace other,
int &  rotation,
bool &  swap 
) const

Definition at line 212 of file MFace.cpp.

Referenced by GFace::alignElementsWithMaster(), and GModel::alignPeriodicBoundaries().

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

◆ getEdge()

MEdge MFace::getEdge ( std::size_t  i) const
inline

Definition at line 35 of file MFace.h.

Here is the call graph for this function:

◆ getNumVertices()

std::size_t MFace::getNumVertices ( ) const
inline

◆ getOrderedVertices() [1/2]

void MFace::getOrderedVertices ( const MVertex **const  verts) const
inline

Definition at line 47 of file MFace.h.

Here is the call graph for this function:

◆ getOrderedVertices() [2/2]

void MFace::getOrderedVertices ( std::vector< MVertex * > &  verts) const
inline

Definition at line 42 of file MFace.h.

Here is the call graph for this function:

◆ getOrientationFlagForFace()

void MFace::getOrientationFlagForFace ( std::vector< int > &  faceOrientationFlag)

Definition at line 84 of file MFace.cpp.

Here is the call graph for this function:

◆ getSortedVertex()

MVertex* MFace::getSortedVertex ( std::size_t  i) const
inline

Definition at line 31 of file MFace.h.

Referenced by getOrderedVertices(), operator!=(), MFaceLessThan::operator()(), and operator==().

Here is the caller graph for this function:

◆ getVertex()

MVertex* MFace::getVertex ( std::size_t  i) const
inline

Definition at line 30 of file MFace.h.

Referenced by MElement::_getFaceInfo(), addToMap(), qmHexahedron::angles(), barycenter(), checkConformity(), computeCorrespondence(), getEdge(), interpolate(), and topoFace::topoFace().

Here is the caller graph for this function:

◆ interpolate()

SPoint3 MFace::interpolate ( const double &  u,
const double &  v 
) const
inline

Definition at line 80 of file MFace.h.

Here is the call graph for this function:

◆ normal()

◆ tangent()

SVector3 MFace::tangent ( int  num) const
inline

Definition at line 55 of file MFace.h.

Here is the call graph for this function:

Member Data Documentation

◆ _si

std::vector<char> MFace::_si
private

Definition at line 23 of file MFace.h.

Referenced by getOrientationFlagForFace(), getSortedVertex(), and MFace().

◆ _v

std::vector<MVertex *> MFace::_v
private

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