| gmsh-TingyuanDoc
    0.1
    An Open-Source Timing-driven Analytical Mixed-size FPGA Placer | 
#include <map>#include <queue>#include <array>#include "meshGFace.h"#include "meshGEdge.h"#include "GVertex.h"#include "GEdge.h"#include "GFace.h"#include "MVertex.h"#include "MTriangle.h"#include "MQuadrangle.h"#include "Context.h"#include "GmshMessage.h"#include "Numeric.h"
Go to the source code of this file.
| Macros | |
| #define | TRAN_QUA(c1, c2, c3, c4, s1, s2, s3, s4, u, v) | 
| #define | TRAN_TRI(c1, c2, c3, s1, s2, s3, u, v) u * c2 + (1. - v) * c1 + v * c3 - (u * (1. - v) * s2 + u * v * s3) | 
| Functions | |
| void | findTransfiniteCorners (GFace *gf, std::vector< MVertex * > &corners) | 
| static void | computeEdgeLoops (const GFace *gf, std::vector< MVertex * > &all_mvertices, std::vector< int > &indices) | 
| double | maxDistParam (const std::vector< double > &U, const std::vector< double > &V) | 
| int | MeshTransfiniteSurface (GFace *gf) | 
| bool | id_loop_from_closed_pairs (const std::vector< std::array< int, 2 > > &pairs, std::vector< int > &loop) | 
| bool | faceIsValidQuad (GFace *gf, double angle_threshold_rad) | 
| GEdge * | quad_face_opposite_edge (GFace *face, GEdge *edge) | 
| void | build_chords (const std::set< GFace * > &faces, std::vector< std::set< GEdge * > > &chords, double maxDiffRel, bool ignoreEmbedded=false) | 
| bool | MeshSetTransfiniteFacesAutomatic (std::set< GFace * > &candidate_faces, double cornerAngle, bool setRecombine, double maxDiffRel, bool ignoreEmbedded) | 
| Automatically set transfinite constraints on curves and faces in the candidate_faces if possible. Curves on opposide sides of rectangular faces are constrained to reiceive the same number of points.  More... | |
| #define TRAN_QUA | ( | c1, | |
| c2, | |||
| c3, | |||
| c4, | |||
| s1, | |||
| s2, | |||
| s3, | |||
| s4, | |||
| u, | |||
| v | |||
| ) | 
Definition at line 37 of file meshGFaceTransfinite.cpp.
| #define TRAN_TRI | ( | c1, | |
| c2, | |||
| c3, | |||
| s1, | |||
| s2, | |||
| s3, | |||
| u, | |||
| v | |||
| ) | u * c2 + (1. - v) * c1 + v * c3 - (u * (1. - v) * s2 + u * v * s3) | 
Definition at line 44 of file meshGFaceTransfinite.cpp.
| void build_chords | ( | const std::set< GFace * > & | faces, | 
| std::vector< std::set< GEdge * > > & | chords, | ||
| double | maxDiffRel, | ||
| bool | ignoreEmbedded = false | ||
| ) | 
Definition at line 768 of file meshGFaceTransfinite.cpp.
Referenced by MeshSetTransfiniteFacesAutomatic().


| 
 | static | 
Definition at line 90 of file meshGFaceTransfinite.cpp.
Referenced by MeshTransfiniteSurface().


| bool faceIsValidQuad | ( | GFace * | gf, | 
| double | angle_threshold_rad | ||
| ) | 
Definition at line 681 of file meshGFaceTransfinite.cpp.
Referenced by MeshSetTransfiniteFacesAutomatic().


Definition at line 46 of file meshGFaceTransfinite.cpp.
Referenced by MeshTransfiniteSurface().


| bool id_loop_from_closed_pairs | ( | const std::vector< std::array< int, 2 > > & | pairs, | 
| std::vector< int > & | loop | ||
| ) | 
Definition at line 642 of file meshGFaceTransfinite.cpp.
Referenced by faceIsValidQuad().

| double maxDistParam | ( | const std::vector< double > & | U, | 
| const std::vector< double > & | V | ||
| ) | 
Definition at line 155 of file meshGFaceTransfinite.cpp.
Referenced by MeshTransfiniteSurface().

| bool MeshSetTransfiniteFacesAutomatic | ( | std::set< GFace * > & | candidate_faces, | 
| double | cornerAngle = 2.35, | ||
| bool | setRecombine = true, | ||
| double | maxDiffRel = 1., | ||
| bool | ignoreEmbedded = false | ||
| ) | 
Automatically set transfinite constraints on curves and faces in the candidate_faces if possible. Curves on opposide sides of rectangular faces are constrained to reiceive the same number of points.
| candidate_faces | The faces which are candidate for transfinite | 
| cornerAngle | Threshold on the angle (viewed from face) at corners | 
| setRecombine | If true, quads will be built instead of triangles when meshing | 
| maxDiffRel | Reject transfinite constraints if the relative difference on the initial number of lines (from sizing constraints) on opposite sides is larger than the maxDiffRel | 
| ignoreEmbedded | If true, ignore embedded edges and vertices in faces | 
Definition at line 817 of file meshGFaceTransfinite.cpp.
Referenced by GenerateMesh().


| int MeshTransfiniteSurface | ( | GFace * | gf | ) | 
Definition at line 166 of file meshGFaceTransfinite.cpp.
Referenced by meshGFace::operator()().


Definition at line 743 of file meshGFaceTransfinite.cpp.
Referenced by build_chords().

