gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
Go to the documentation of this file.
52 std::map<MVertex *, BoundaryLayerFan>
_fans;
59 std::multimap<MVertex *, BoundaryLayerData>
_data;
61 typedef std::multimap<MVertex *, BoundaryLayerData>::iterator
iter;
62 typedef std::map<MVertex *, BoundaryLayerFan>::iterator
iterf;
64 std::multimap<MEdge, SVector3, MEdgeLessThan>
_normals;
87 const std::vector<MVertex *> &_column)
97 auto it =
_fans.find(v);
98 if(it !=
_fans.end()) {
return &it->second; }
103 auto it =
_fans.find(v);
107 if(it !=
_fans.end()) {
108 if(aaa(it->second._e1, e))
113 Msg::Error(
"Cannot handle embedded lines in boundary layers");
122 for(
auto itm =
_data.lower_bound(v); itm !=
_data.upper_bound(v); ++itm) {
123 if(count++ == iColumn)
return itm->second;
const BoundaryLayerData & _c2
edgeColumn getColumns(MVertex *v1, MVertex *v2, int side)
const BoundaryLayerData & getColumn(MVertex *v, MEdge e) const
std::map< MFace, GFace *, MFaceLessThan > _inverse_classification
const BoundaryLayerData & getColumn(MVertex *v, int iColumn) const
std::map< MVertex *, BoundaryLayerFan >::iterator iterf
static void Error(const char *fmt,...)
const BoundaryLayerData & _c1
BoundaryLayerData(const SVector3 &dir, const std::vector< MVertex * > &column)
std::map< MElement *, std::vector< MElement * > > _elemColumns
void buildMeshMetric(GFace *gf, double *uv, SMetric3 &m, double metric[3])
void addFan(MVertex *v, MEdge e1, MEdge e2, bool s)
std::map< MVertex *, BoundaryLayerFan > _fans
edgeColumn(const BoundaryLayerData &c1, const BoundaryLayerData &c2)
std::multimap< MVertex *, BoundaryLayerData > _data
std::multimap< MEdge, SVector3, MEdgeLessThan > _normals
BoundaryLayerFan(MEdge e1, MEdge e2, bool s=true)
std::multimap< MVertex *, BoundaryLayerData >::iterator iter
std::vector< MVertex * > _column
int getNbColumns(MVertex *v) const
const BoundaryLayerFan * getFan(MVertex *v) const
std::map< MElement *, MElement * > _toFirst
std::multimap< MVertex *, MVertex * > _non_manifold_edges
void addColumn(const SVector3 &dir, MVertex *v, const std::vector< MVertex * > &_column)
bool buildAdditionalPoints2D(GFace *gf)
BoundaryLayerField * getBLField(GModel *gm)
bool buildAdditionalPoints3D(GRegion *gr)