gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
#include <BDS.h>
Public Member Functions | |
BDS_Mesh (int MAXX=0) | |
virtual | ~BDS_Mesh () |
BDS_Mesh (const BDS_Mesh &other) | |
BDS_Point * | add_point (int num, double x, double y, double z) |
BDS_Point * | add_point (int num, double u, double v, GFace *gf) |
void | del_point (BDS_Point *p) |
BDS_Point * | find_point (int num) |
BDS_Edge * | add_edge (int p1, int p2) |
void | del_edge (BDS_Edge *e) |
BDS_Edge * | find_edge (int p1, int p2) |
BDS_Edge * | find_edge (BDS_Point *p1, BDS_Point *p2) |
BDS_Edge * | find_edge (BDS_Point *p1, int p2) |
BDS_Edge * | find_edge (BDS_Point *p1, BDS_Point *p2, BDS_Face *t) const |
BDS_Face * | add_triangle (int p1, int p2, int p3) |
BDS_Face * | add_triangle (BDS_Edge *e1, BDS_Edge *e2, BDS_Edge *e3) |
void | del_face (BDS_Face *t) |
BDS_Face * | find_triangle (BDS_Edge *e1, BDS_Edge *e2, BDS_Edge *e3) |
void | add_geom (int degree, int tag) |
BDS_GeomEntity * | get_geom (int p1, int p2) |
BDS_Edge * | recover_edge (int p1, int p2, bool &_fatal, std::set< EdgeToRecover > *e2r=nullptr, std::set< EdgeToRecover > *not_recovered=nullptr) |
BDS_Edge * | recover_edge_fast (BDS_Point *p1, BDS_Point *p2) |
bool | swap_edge (BDS_Edge *, const BDS_SwapEdgeTest &theTest, bool force=false) |
Can invalidate the iterators for edge . More... | |
bool | collapse_edge_parametric (BDS_Edge *, BDS_Point *, bool=false) |
bool | smooth_point_centroid (BDS_Point *p, GFace *gf, double thresh) |
bool | split_edge (BDS_Edge *, BDS_Point *, bool check_area_param=false) |
bool | edge_constraint (BDS_Point *p1, BDS_Point *p2) |
void | cleanup () |
Public Attributes | |
int | MAXPOINTNUMBER |
double | Min [3] |
double | Max [3] |
double | LC |
std::set< BDS_GeomEntity *, GeomLessThan > | geom |
std::set< BDS_Point *, PointLessThan > | points |
std::vector< BDS_Edge * > | edges |
std::vector< BDS_Face * > | triangles |
|
virtual |
BDS_Mesh::BDS_Mesh | ( | const BDS_Mesh & | other | ) |
BDS_Edge * BDS_Mesh::add_edge | ( | int | p1, |
int | p2 | ||
) |
Definition at line 479 of file BDS.cpp.
Referenced by add_triangle().
void BDS_Mesh::add_geom | ( | int | degree, |
int | tag | ||
) |
Definition at line 539 of file BDS.cpp.
Referenced by buildConsecutiveListOfVertices(), meshGenerator(), meshGeneratorPeriodic(), recoverEdge(), and refineMeshBDS().
BDS_Point * BDS_Mesh::add_point | ( | int | num, |
double | x, | ||
double | y, | ||
double | z | ||
) |
Definition at line 257 of file BDS.cpp.
Referenced by buildConsecutiveListOfVertices(), meshGenerator(), meshGeneratorPeriodic(), splitAllEdgesConnectedToSingularity(), and splitEdgePass().
BDS_Face * BDS_Mesh::add_triangle | ( | int | p1, |
int | p2, | ||
int | p3 | ||
) |
Definition at line 496 of file BDS.cpp.
Referenced by collapse_edge_parametric(), meshGenerator(), and meshGeneratorPeriodic().
void BDS_Mesh::cleanup | ( | ) |
Definition at line 642 of file BDS.cpp.
Referenced by meshGenerator(), meshGeneratorPeriodic(), refineMeshBDS(), swapEdgePass(), and ~BDS_Mesh().
Definition at line 1074 of file BDS.cpp.
Referenced by collapseEdgePass(), and modifyInitialMeshToRemoveDegeneracies().
void BDS_Mesh::del_edge | ( | BDS_Edge * | e | ) |
Definition at line 525 of file BDS.cpp.
Referenced by collapse_edge_parametric(), meshGenerator(), meshGeneratorPeriodic(), split_edge(), and swap_edge().
void BDS_Mesh::del_face | ( | BDS_Face * | t | ) |
Definition at line 515 of file BDS.cpp.
Referenced by collapse_edge_parametric(), meshGenerator(), meshGeneratorPeriodic(), split_edge(), and swap_edge().
void BDS_Mesh::del_point | ( | BDS_Point * | p | ) |
Definition at line 533 of file BDS.cpp.
Referenced by meshGenerator(), meshGeneratorPeriodic(), splitAllEdgesConnectedToSingularity(), and splitEdgePass().
BDS_Edge * BDS_Mesh::find_edge | ( | int | p1, |
int | p2 | ||
) |
Definition at line 301 of file BDS.cpp.
Referenced by add_edge(), collapse_edge_parametric(), find_edge(), meshGeneratorPeriodic(), recover_edge(), recover_edge_fast(), split_edge(), and swap_edge().
BDS_Point * BDS_Mesh::find_point | ( | int | num | ) |
Definition at line 277 of file BDS.cpp.
Referenced by add_edge(), find_edge(), meshGenerator(), meshGeneratorPeriodic(), and recover_edge().
BDS_GeomEntity * BDS_Mesh::get_geom | ( | int | p1, |
int | p2 | ||
) |
Definition at line 597 of file BDS.cpp.
Referenced by buildConsecutiveListOfVertices(), meshGenerator(), meshGeneratorPeriodic(), recoverEdge(), and refineMeshBDS().
BDS_Edge * BDS_Mesh::recover_edge | ( | int | p1, |
int | p2, | ||
bool & | _fatal, | ||
std::set< EdgeToRecover > * | e2r = nullptr , |
||
std::set< EdgeToRecover > * | not_recovered = nullptr |
||
) |
Definition at line 347 of file BDS.cpp.
Referenced by meshGeneratorPeriodic(), and recoverEdge().
Definition at line 1613 of file BDS.cpp.
Referenced by smoothVertexPass().
Definition at line 674 of file BDS.cpp.
Referenced by splitAllEdgesConnectedToSingularity(), and splitEdgePass().
bool BDS_Mesh::swap_edge | ( | BDS_Edge * | e, |
const BDS_SwapEdgeTest & | theTest, | ||
bool | force = false |
||
) |
Can invalidate the iterators for edge
.
Definition at line 926 of file BDS.cpp.
Referenced by delaunayizeBDS(), recover_edge(), recover_edge_fast(), and swapEdgePass().
std::vector<BDS_Edge *> BDS_Mesh::edges |
Definition at line 348 of file BDS.h.
Referenced by add_edge(), cleanup(), collapse_edge_parametric(), collapseEdgePass(), computeNodalSizes(), delaunayizeBDS(), getDegeneratedVertices(), meshGenerator(), meshGeneratorPeriodic(), recover_edge(), refineMeshBDS(), split_edge(), splitAllEdgesConnectedToSingularity(), splitEdgePass(), swap_edge(), swapEdgePass(), and ~BDS_Mesh().
std::set<BDS_GeomEntity *, GeomLessThan> BDS_Mesh::geom |
Definition at line 346 of file BDS.h.
Referenced by add_geom(), get_geom(), and ~BDS_Mesh().
int BDS_Mesh::MAXPOINTNUMBER |
Definition at line 341 of file BDS.h.
Referenced by add_point(), meshGeneratorPeriodic(), refineMeshBDS(), splitAllEdgesConnectedToSingularity(), and splitEdgePass().
std::set<BDS_Point *, PointLessThan> BDS_Mesh::points |
Definition at line 347 of file BDS.h.
Referenced by add_point(), computeNodalSizes(), del_point(), find_point(), getDegeneracy(), meshGenerator(), smoothVertexPass(), splitEdgePass(), and ~BDS_Mesh().
std::vector<BDS_Face *> BDS_Mesh::triangles |
Definition at line 349 of file BDS.h.
Referenced by add_triangle(), BDS2GMSH(), cleanup(), meshGenerator(), meshGeneratorPeriodic(), recover_edge(), recoverEdge(), refineMeshBDS(), split_edge(), swap_edge(), and ~BDS_Mesh().