gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
#include <BackgroundMesh.h>
Public Member Functions | |
void | propagate1dMesh (GFace *) |
void | propagateCrossField (GFace *, simpleFunction< double > *) |
void | propagateCrossFieldHJ (GFace *) |
void | propagateCrossField (GFace *) |
void | propagateCrossFieldByDistance (GFace *) |
void | updateSizes (GFace *) |
double | operator() (double u, double v, double w) const |
bool | inDomain (double u, double v, double w) const |
double | getAngle (double u, double v, double w) const |
double | getSmoothness (double u, double v, double w) |
double | getSmoothness (MElement *) |
void | print (const std::string &filename, GFace *gf, const std::map< MVertex *, double > &, int smooth=0) |
void | print (const std::string &filename, GFace *gf, int choice=0) |
MElement * | getMeshElementByCoord (double u, double v, double w, bool strict=true) |
int | getNumMeshElements () const |
std::vector< MVertex * >::iterator | begin_vertices () |
std::vector< MVertex * >::iterator | end_vertices () |
std::vector< MVertex * >::const_iterator | begin_vertices () const |
std::vector< MVertex * >::const_iterator | end_vertices () const |
std::vector< MElement * >::iterator | begin_triangles () |
std::vector< MElement * >::iterator | end_triangles () |
std::vector< MElement * >::const_iterator | begin_triangles () const |
std::vector< MElement * >::const_iterator | end_triangles () const |
Public Member Functions inherited from simpleFunction< double > | |
simpleFunction (double val=0.0) | |
virtual | ~simpleFunction () |
virtual bool | hasDerivatives () |
virtual void | setElement (MElement *e) const |
virtual void | gradient (double x, double y, double z, double &dfdx, double &dfdy, double &dfdz) const |
virtual void | hessian (double x, double y, double z, double &dfdxx, double &dfdxy, double &dfdxz, double &dfdyx, double &dfdyy, double &dfdyz, double &dfdzx, double &dfdzy, double &dfdzz) const |
Static Public Member Functions | |
static void | set (GFace *) |
static void | setCrossFieldsByDistance (GFace *) |
static void | unset () |
static backgroundMesh * | current () |
Private Member Functions | |
backgroundMesh (GFace *, bool dist=false) | |
~backgroundMesh () | |
Private Attributes | |
MElementOctree * | _octree |
std::vector< MVertex * > | _vertices |
std::vector< MElement * > | _triangles |
std::map< MVertex *, double > | _sizes |
std::map< MVertex *, MVertex * > | _3Dto2D |
std::map< MVertex *, MVertex * > | _2Dto3D |
std::map< MVertex *, double > | _distance |
std::map< MVertex *, double > | _angles |
Static Private Attributes | |
static std::vector< backgroundMesh * > | _current |
Additional Inherited Members | |
Protected Attributes inherited from simpleFunction< double > | |
double | _val |
bool | _hasDerivatives |
Definition at line 46 of file BackgroundMesh.h.
|
private |
Definition at line 75 of file BackgroundMesh.cpp.
Referenced by set(), and setCrossFieldsByDistance().
|
private |
Definition at line 154 of file BackgroundMesh.cpp.
|
inline |
Definition at line 110 of file BackgroundMesh.h.
|
inline |
Definition at line 115 of file BackgroundMesh.h.
|
inline |
Definition at line 97 of file BackgroundMesh.h.
|
inline |
Definition at line 102 of file BackgroundMesh.h.
|
static |
Definition at line 68 of file BackgroundMesh.cpp.
Referenced by buildBackgroundMesh(), directions_storage(), improved_translate(), Mesh2D(), MTri3::MTri3(), and optimalPointFrontalQuad().
|
inline |
Definition at line 114 of file BackgroundMesh.h.
|
inline |
Definition at line 119 of file BackgroundMesh.h.
|
inline |
Definition at line 101 of file BackgroundMesh.h.
|
inline |
Definition at line 106 of file BackgroundMesh.h.
double backgroundMesh::getAngle | ( | double | u, |
double | v, | ||
double | w | ||
) | const |
Definition at line 603 of file BackgroundMesh.cpp.
Referenced by improved_translate(), MTri3::MTri3(), and optimalPointFrontalQuad().
MElement * backgroundMesh::getMeshElementByCoord | ( | double | u, |
double | v, | ||
double | w, | ||
bool | strict = true |
||
) |
|
inline |
Definition at line 96 of file BackgroundMesh.h.
double backgroundMesh::getSmoothness | ( | double | u, |
double | v, | ||
double | w | ||
) |
Definition at line 389 of file BackgroundMesh.cpp.
Referenced by print(), and propagateCrossField().
double backgroundMesh::getSmoothness | ( | MElement * | e | ) |
bool backgroundMesh::inDomain | ( | double | u, |
double | v, | ||
double | w | ||
) | const |
|
virtual |
Reimplemented from simpleFunction< double >.
Definition at line 568 of file BackgroundMesh.cpp.
void backgroundMesh::print | ( | const std::string & | filename, |
GFace * | gf, | ||
const std::map< MVertex *, double > & | _whatToPrint, | ||
int | smooth = 0 |
||
) |
Definition at line 672 of file BackgroundMesh.cpp.
Referenced by buildBackgroundMesh(), print(), and propagateCrossField().
|
inline |
void backgroundMesh::propagate1dMesh | ( | GFace * | _gf | ) |
void backgroundMesh::propagateCrossField | ( | GFace * | _gf | ) |
void backgroundMesh::propagateCrossField | ( | GFace * | _gf, |
simpleFunction< double > * | ONE | ||
) |
Definition at line 448 of file BackgroundMesh.cpp.
Referenced by propagateCrossField(), and propagateCrossFieldHJ().
void backgroundMesh::propagateCrossFieldByDistance | ( | GFace * | _gf | ) |
void backgroundMesh::propagateCrossFieldHJ | ( | GFace * | _gf | ) |
Definition at line 442 of file BackgroundMesh.cpp.
Referenced by propagateCrossField().
|
static |
Definition at line 40 of file BackgroundMesh.cpp.
Referenced by buildBackgroundMesh(), and directions_storage().
|
static |
Definition at line 52 of file BackgroundMesh.cpp.
Referenced by buildBackgroundMesh().
|
static |
Definition at line 60 of file BackgroundMesh.cpp.
Referenced by bowyerWatsonFrontalLayers(), bowyerWatsonParallelograms(), bowyerWatsonParallelogramsConstrained(), directions_storage(), and Mesh2D().
void backgroundMesh::updateSizes | ( | GFace * | _gf | ) |
Definition at line 52 of file BackgroundMesh.h.
Referenced by propagate1dMesh(), propagateCrossField(), and updateSizes().
Definition at line 51 of file BackgroundMesh.h.
Referenced by getSmoothness().
|
private |
Definition at line 54 of file BackgroundMesh.h.
Referenced by getAngle(), getSmoothness(), print(), and propagateCrossField().
|
staticprivate |
Definition at line 55 of file BackgroundMesh.h.
Referenced by current(), set(), setCrossFieldsByDistance(), and unset().
|
private |
Definition at line 53 of file BackgroundMesh.h.
|
private |
Definition at line 47 of file BackgroundMesh.h.
Referenced by getAngle(), getMeshElementByCoord(), getSmoothness(), inDomain(), operator()(), and ~backgroundMesh().
|
private |
Definition at line 50 of file BackgroundMesh.h.
Referenced by operator()(), print(), propagate1dMesh(), and updateSizes().
|
private |
Definition at line 49 of file BackgroundMesh.h.
Referenced by begin_triangles(), end_triangles(), getMeshElementByCoord(), getNumMeshElements(), print(), updateSizes(), and ~backgroundMesh().
|
private |
Definition at line 48 of file BackgroundMesh.h.
Referenced by begin_vertices(), end_vertices(), and ~backgroundMesh().