gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
#include <GRegion.h>
Public Member Functions | |
GRegion (GModel *model, int tag) | |
virtual | ~GRegion () |
virtual void | deleteMesh () |
virtual int | dim () const |
virtual GEntity * | getParentEntity () |
virtual void | setVisibility (char val, bool recursive=false) |
virtual void | setColor (unsigned int val, bool recursive=false) |
void | addEmbeddedVertex (GVertex *v) |
void | addEmbeddedEdge (GEdge *e) |
void | addEmbeddedFace (GFace *f) |
int | delFace (GFace *face) |
virtual std::vector< GFace * > | faces () const |
virtual std::vector< int > | faceOrientations () const |
void | set (std::vector< GFace * > const &f) |
void | setOrientations (const std::vector< int > &f) |
void | setFace (GFace *const f, int const orientation) |
void | setBoundFaces (const std::set< int > &tagFaces) |
void | setBoundFaces (const std::vector< int > &tagFaces, const std::vector< int > &signFaces) |
std::vector< GVertex * > & | embeddedVertices () |
std::vector< GEdge * > & | embeddedEdges () |
std::vector< GFace * > & | embeddedFaces () |
std::vector< MVertex * > | getEmbeddedMeshVertices () const |
virtual std::vector< GEdge * > const & | edges () const |
virtual std::vector< GVertex * > | vertices () const |
virtual SBoundingBox3d | bounds (bool fast=false) |
virtual SOrientedBoundingBox | getOBB () |
bool | edgeConnected (GRegion *r) const |
double | computeSolidProperties (std::vector< double > cg, std::vector< double > inertia) |
virtual std::string | getAdditionalInfoString (bool multline=false) |
virtual void | writeGEO (FILE *fp) |
virtual void | writePY (FILE *fp) |
virtual void | getElementTypes (std::vector< int > &types) const |
std::size_t | getNumMeshElements () const |
std::size_t | getNumMeshElementsByType (const int familyType) const |
std::size_t | getNumMeshParentElements () |
void | getNumMeshElements (unsigned *const c) const |
MElement *const * | getStartElementType (int type) const |
MElement * | getMeshElement (std::size_t index) const |
MElement * | getMeshElementByType (const int familyType, const std::size_t index) const |
virtual void | resetMeshAttributes () |
virtual double | getMeshSize () const |
void | addTetrahedron (MTetrahedron *t) |
void | addHexahedron (MHexahedron *h) |
void | addPrism (MPrism *p) |
void | addPyramid (MPyramid *p) |
void | addPolyhedron (MPolyhedron *p) |
void | addTrihedron (MTrihedron *t) |
void | addElement (int type, MElement *e) |
void | removeElement (int type, MElement *e) |
void | removeElements (int type) |
BoundaryLayerColumns * | getColumns () |
virtual bool | reorder (const int elementType, const std::vector< std::size_t > &ordering) |
bool | setOutwardOrientationMeshConstraint () |
virtual bool | isFullyDiscrete () |
Public Member Functions inherited from GEntity | |
void | addVerticesInSet (std::set< MVertex * > &, bool closure) const |
virtual std::string | getTypeString () |
GEntity (GModel *m, int t) | |
virtual | ~GEntity () |
virtual void | mesh (bool verbose) |
void | deleteVertexArrays () |
virtual std::list< GRegion * > | regions () const |
virtual bool | isOrphan () |
std::vector< GRegion * > | bindingsGetRegions () |
std::vector< GFace * > | bindingsGetFaces () |
std::vector< GEdge * > | bindingsGetEdges () const |
std::vector< GVertex * > | bindingsGetVertices () |
virtual GeomType | geomType () const |
virtual bool | continuous (int dim) const |
virtual bool | periodic (int dim) const |
virtual double | period (int dim) const |
virtual bool | degenerate (int dim) const |
virtual bool | haveParametrization () |
virtual Range< double > | parBounds (int i) const |
virtual double | tolerance () const |
virtual bool | containsPoint (const SPoint3 &pt) const |
virtual ModelType | getNativeType () const |
virtual void * | getNativePtr () const |
virtual int | getNativeInt () const |
GModel * | model () const |
int | tag () const |
void | setTag (int tag) |
virtual void | addPhysicalEntity (int physicalTag) |
virtual std::vector< int > | getPhysicalEntities () |
GEntity * | getMeshMaster () const |
void | setMeshMaster (GEntity *) |
void | setMeshMaster (GEntity *, const std::vector< double > &, bool updateCorrespondingVertices=true) |
void | updateCorrespondingVertices () |
void | copyMasterCoordinates () |
virtual void | alignElementsWithMaster () |
virtual char | getVisibility () |
virtual char | getSelection () |
virtual void | setSelection (char val) |
virtual unsigned int | getColor () |
virtual void | setColor (unsigned color, bool recursive=false) |
virtual bool | useColor () |
virtual std::string | getInfoString (bool additional=true, bool multiline=false) |
virtual double | getMeshSizeFactor () const |
bool | getAllElementsVisible () |
void | setAllElementsVisible (bool val) |
std::size_t | getNumMeshVertices () |
MVertex * | getMeshVertex (std::size_t index) |
void | addMeshVertex (MVertex *v) |
void | removeMeshVertex (MVertex *v) |
virtual void | relocateMeshVertices () |
GVertex * | cast2Vertex () |
GEdge * | cast2Edge () |
GFace * | cast2Face () |
GRegion * | cast2Region () |
Public Attributes | |
struct { | |
int recombine3D | |
char method | |
ExtrudeParams * extrude | |
std::vector< GVertex * > corners | |
int QuadTri | |
double meshSize | |
} | meshAttributes |
std::vector< std::vector< std::vector< MVertex * > > > | transfinite_vertices |
std::vector< MTetrahedron * > | tetrahedra |
std::vector< MHexahedron * > | hexahedra |
std::vector< MPrism * > | prisms |
std::vector< MPyramid * > | pyramids |
std::vector< MTrihedron * > | trihedra |
std::vector< MPolyhedron * > | polyhedra |
Public Attributes inherited from GEntity | |
std::vector< MVertex * > | mesh_vertices |
std::vector< GEntity * > | compound |
std::map< GVertex *, GVertex * > | vertexCounterparts |
std::vector< int > | physicals |
VertexArray * | va_lines |
VertexArray * | va_triangles |
std::set< MElement * > | curvedBLElements |
std::vector< double > | affineTransform |
std::map< MVertex *, MVertex * > | correspondingVertices |
std::map< MVertex *, MVertex * > | correspondingHighOrderVertices |
Protected Attributes | |
std::vector< GFace * > | l_faces |
std::vector< GVertex * > | embedded_vertices |
std::vector< GFace * > | embedded_faces |
std::vector< GEdge * > | embedded_edges |
std::vector< int > | l_dirs |
BoundaryLayerColumns | _columns |
Protected Attributes inherited from GEntity | |
SOrientedBoundingBox * | _obb |
Additional Inherited Members | |
Public Types inherited from GEntity | |
enum | ModelType { UnknownModel, GmshModel, OpenCascadeModel, AcisModel, ParasolidModel } |
enum | GeomType { Unknown, Point, BoundaryLayerPoint, Line, Circle, Ellipse, Conic, Parabola, Hyperbola, TrimmedCurve, OffsetCurve, BSpline, Bezier, ParametricCurve, BoundaryLayerCurve, DiscreteCurve, Plane, Nurb, Cylinder, Sphere, Cone, Torus, RuledSurface, ParametricSurface, BSplineSurface, BezierSurface, SurfaceOfRevolution, BoundaryLayerSurface, DiscreteSurface, DiscreteDiskSurface, Volume, DiscreteVolume, PartitionPoint, PartitionCurve, PartitionSurface, PartitionVolume, GhostCurve, GhostSurface, GhostVolume } |
enum | MeshGenerationStatus { PENDING, DONE, FAILED } |
GRegion::GRegion | ( | GModel * | model, |
int | tag | ||
) |
|
virtual |
|
virtual |
Reimplemented from GEntity.
Definition at line 613 of file GRegion.cpp.
Referenced by ghostRegion::addElement().
|
inline |
Definition at line 58 of file GRegion.h.
Referenced by addEmbedded().
|
inline |
Definition at line 59 of file GRegion.h.
Referenced by addEmbedded().
|
inline |
Definition at line 57 of file GRegion.h.
Referenced by addEmbedded().
|
inline |
Definition at line 171 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addHexahedron().
|
inline |
Definition at line 174 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addPolyhedron().
|
inline |
Definition at line 172 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addPrism().
|
inline |
Definition at line 173 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addPyramid().
|
inline |
Definition at line 170 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addTetrahedron().
|
inline |
Definition at line 175 of file GRegion.h.
Referenced by addElement(), and ghostRegion::addTrihedron().
|
virtual |
Reimplemented from GEntity.
Definition at line 179 of file GRegion.cpp.
Referenced by meshGRegionNetgen(), optimizeMeshGRegionNetgen::operator()(), drawGRegion::operator()(), and setOutwardOrientationMeshConstraint().
double GRegion::computeSolidProperties | ( | std::vector< double > | cg, |
std::vector< double > | inertia | ||
) |
|
virtual |
Reimplemented from GEntity.
Definition at line 39 of file GRegion.cpp.
Referenced by copy_vertices(), deMeshGRegion::operator()(), and ~GRegion().
int GRegion::delFace | ( | GFace * | face | ) |
|
inlinevirtual |
bool GRegion::edgeConnected | ( | GRegion * | r | ) | const |
|
virtual |
Reimplemented from GEntity.
Definition at line 459 of file GRegion.cpp.
Referenced by blyr_manager::blyr_manager(), edgeConnected(), extrudeInfo::fillExtrudeParams(), findTransfiniteCorners(), getCandidateExtrudeInfo(), isFullyDiscrete(), and MeshTransfiniteVolume().
|
inline |
Definition at line 80 of file GRegion.h.
Referenced by createAllEmbeddedEdges(), MeshDelaunayVolume(), EmbeddedCompatibilityTest::operator()(), and removeEmbedded().
|
inline |
Definition at line 81 of file GRegion.h.
Referenced by createAllEmbeddedFaces(), EmbeddedCompatibilityTest::operator()(), and removeEmbedded().
|
inline |
Definition at line 79 of file GRegion.h.
Referenced by MeshDelaunayVolume(), and removeEmbedded().
|
inlinevirtual |
Definition at line 66 of file GRegion.h.
Referenced by GModel::getBoundaryTags().
|
inlinevirtual |
Reimplemented from GEntity.
Definition at line 64 of file GRegion.h.
Referenced by _eulerCharacteristic(), blyr_manager::blyr_manager(), splitQuadRecovery::buildPyramids(), extrudeInfo::fillExtrudeParams(), FindConnectedRegions(), findTransfiniteCorners(), GModel::getBoundaryTags(), getCandidateExtrudeInfo(), getOBB(), insertAllVertices(), isFullyDiscrete(), Mesh3D(), MeshDelaunayVolume(), meshGRegionNetgen(), MeshTransfiniteVolume(), GModel::remove(), setOutwardOrientationMeshConstraint(), SubdivideExtrudedMesh(), and topoExists().
|
virtual |
Reimplemented from GEntity.
Definition at line 334 of file GRegion.cpp.
|
inline |
|
inlinevirtual |
std::vector< MVertex * > GRegion::getEmbeddedMeshVertices | ( | ) | const |
Definition at line 571 of file GRegion.cpp.
Referenced by insertAllVertices().
|
virtual |
Reimplemented from GEntity.
Definition at line 127 of file GRegion.cpp.
Referenced by GModel::_readMSH4(), bounds(), buildUniqueFaces(), createTopologyFromMesh3D(), and EmbeddedCompatibilityTest::operator()().
|
virtual |
Reimplemented from GEntity.
Definition at line 151 of file GRegion.cpp.
|
inlinevirtual |
|
virtual |
Reimplemented from GEntity.
Definition at line 60 of file GRegion.cpp.
Referenced by GModel::_readMSH4(), bounds(), buildUniqueFaces(), createTopologyFromMesh3D(), GModel::getMeshStatus(), Mesh3D(), meshGRegion::operator()(), and EmbeddedCompatibilityTest::operator()().
|
virtual |
Reimplemented from GEntity.
Definition at line 92 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 66 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 84 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 194 of file GRegion.cpp.
|
inlinevirtual |
Reimplemented from GEntity.
Reimplemented in partitionRegion.
|
virtual |
Reimplemented from GEntity.
Definition at line 102 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 948 of file GRegion.cpp.
Referenced by splitQuadRecovery::buildPyramids(), meshGRegion::operator()(), optimizeMeshGRegion::operator()(), and deMeshGRegion::operator()().
|
virtual |
Reimplemented from GEntity.
Definition at line 627 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 665 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 679 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Reimplemented in gmshRegion.
Definition at line 170 of file GRegion.cpp.
Referenced by GRegion(), and GEO_Internals::synchronize().
|
inline |
Definition at line 67 of file GRegion.h.
Referenced by createTopologyFromMesh3D(), and MeshDelaunayVolume().
void GRegion::setBoundFaces | ( | const std::set< int > & | tagFaces | ) |
Definition at line 294 of file GRegion.cpp.
Referenced by readMSHEntities(), and setBoundFaces().
void GRegion::setBoundFaces | ( | const std::vector< int > & | tagFaces, |
const std::vector< int > & | signFaces | ||
) |
|
virtual |
|
inline |
|
inline |
bool GRegion::setOutwardOrientationMeshConstraint | ( | ) |
|
virtual |
Reimplemented from GEntity.
Definition at line 250 of file GRegion.cpp.
|
virtual |
Reimplemented from GEntity.
Definition at line 603 of file GRegion.cpp.
Referenced by GModel::getBoundaryTags(), and getOBB().
|
virtual |
|
virtual |
|
protected |
Definition at line 35 of file GRegion.h.
Referenced by getColumns().
std::vector<GVertex *> GRegion::corners |
Definition at line 150 of file GRegion.h.
Referenced by findTransfiniteCorners().
|
protected |
Definition at line 33 of file GRegion.h.
Referenced by addEmbeddedEdge(), embeddedEdges(), getAdditionalInfoString(), getEmbeddedMeshVertices(), setColor(), setVisibility(), and writeGEO().
|
protected |
Definition at line 32 of file GRegion.h.
Referenced by addEmbeddedFace(), embeddedFaces(), getAdditionalInfoString(), getEmbeddedMeshVertices(), setColor(), setVisibility(), and writeGEO().
|
protected |
Definition at line 31 of file GRegion.h.
Referenced by addEmbeddedVertex(), embeddedVertices(), getAdditionalInfoString(), getEmbeddedMeshVertices(), setColor(), setVisibility(), and writeGEO().
ExtrudeParams* GRegion::extrude |
Definition at line 148 of file GRegion.h.
Referenced by splitQuadRecovery::buildPyramids(), extrudeMesh(), extrudeInfo::fillExtrudeParams(), getRegionFromBoundingFaces(), meshGRegion::operator()(), meshGRegionExtruded::operator()(), optimizeMeshGRegion::operator()(), optimizeMeshGRegionNetgen::operator()(), phase1(), phase2(), phase3(), and SubdivideExtrudedMesh().
std::vector<MHexahedron *> GRegion::hexahedra |
Definition at line 164 of file GRegion.h.
Referenced by initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), _getEntitiesForElementTypes(), GModel::_storeElementsInEntities(), addHexahedron(), addHexahedron(), copy_elements(), deleteMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), GModel::makeDiscreteRegionsSimplyConnected(), MakeMeshConformal(), MeshTransfiniteVolume(), optimizeMeshGRegionNetgen::operator()(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), optimizeMesh(), GModel::readP3D(), RelocateVertices(), RelocateVerticesOfPyramids(), removeElement(), removeElements(), reorder(), setHighOrder(), Subdivide(), SubdivideExtrudedMesh(), and ghostRegion::~ghostRegion().
|
protected |
Definition at line 34 of file GRegion.h.
Referenced by computeSolidProperties(), delFace(), faceOrientations(), gmshRegion::resetNativePtr(), setBoundFaces(), setFace(), and setOrientations().
|
protected |
Definition at line 30 of file GRegion.h.
Referenced by bounds(), computeSolidProperties(), discreteRegion::createGeometry(), delFace(), edges(), faces(), getAdditionalInfoString(), gmshRegion::resetNativePtr(), set(), setBoundFaces(), setColor(), setFace(), setVisibility(), vertices(), writeGEO(), writePY(), and ~GRegion().
struct { ... } GRegion::meshAttributes |
Referenced by splitQuadRecovery::buildPyramids(), extrudeMesh(), extrudeInfo::fillExtrudeParams(), findTransfiniteCorners(), getAdditionalInfoString(), getMeshSize(), GModel::getMeshStatus(), getRegionFromBoundingFaces(), Mesh3D(), MeshTransfiniteVolume(), meshGRegion::operator()(), meshGRegionExtruded::operator()(), optimizeMeshGRegion::operator()(), optimizeMeshGRegionNetgen::operator()(), phase1(), phase2(), phase3(), gmshRegion::resetMeshAttributes(), resetMeshAttributes(), SubdivideExtrudedMesh(), and writeGEO().
char GRegion::method |
Definition at line 146 of file GRegion.h.
Referenced by splitQuadRecovery::buildPyramids(), GModel::getMeshStatus(), getRegionFromBoundingFaces(), MeshTransfiniteVolume(), meshGRegion::operator()(), optimizeMeshGRegion::operator()(), and optimizeMeshGRegionNetgen::operator()().
std::vector<MPolyhedron *> GRegion::polyhedra |
Definition at line 168 of file GRegion.h.
Referenced by initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), GModel::_storeElementsInEntities(), addPolyhedron(), deleteMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getNumMeshParentElements(), getStartElementType(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), removeElement(), removeElements(), reorder(), and ghostRegion::~ghostRegion().
std::vector<MPrism *> GRegion::prisms |
Definition at line 165 of file GRegion.h.
Referenced by initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), _getEntitiesForElementTypes(), GModel::_storeElementsInEntities(), addPrism(), addPrism(), copy_elements(), deleteMesh(), blyr_manager::extrude_external_corners(), blyr_manager::extrude_ridges(), blyr_manager::extrude_triangles(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), GModel::makeDiscreteRegionsSimplyConnected(), MakeMeshConformal(), MeshTransfiniteVolume(), optimizeMeshGRegionNetgen::operator()(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), optimizeMesh(), RelocateVertices(), RelocateVerticesOfPyramids(), removeElement(), removeElements(), reorder(), setHighOrder(), Subdivide(), SubdivideExtrudedMesh(), and ghostRegion::~ghostRegion().
std::vector<MPyramid *> GRegion::pyramids |
Definition at line 166 of file GRegion.h.
Referenced by initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), _getEntitiesForElementTypes(), GModel::_storeElementsInEntities(), addPyramid(), addPyramid(), splitQuadRecovery::buildPyramids(), copy_elements(), deleteMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), GModel::makeDiscreteRegionsSimplyConnected(), MakeMeshConformal(), optimizeMeshGRegionNetgen::operator()(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), optimizeMesh(), RelocateVertices(), RelocateVerticesOfPyramids(), removeElement(), removeElements(), reorder(), setHighOrder(), Subdivide(), SubdivideExtrudedMesh(), and ghostRegion::~ghostRegion().
int GRegion::QuadTri |
Definition at line 152 of file GRegion.h.
Referenced by MeshTransfiniteVolume().
std::vector<MTetrahedron *> GRegion::tetrahedra |
Definition at line 163 of file GRegion.h.
Referenced by _deleteUnusedVertices(), initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), _getEntitiesForElementTypes(), GModel::_storeElementsInEntities(), addTetrahedron(), addTetrahedron(), alphaShapes(), BarycentricRefineMesh(), blyr_manager::blyr_manager(), copy_elements(), createBoundaryLayerOneLayer(), deleteMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), insertVerticesInRegion(), GModel::makeDiscreteRegionsSimplyConnected(), MakeMeshConformal(), MeshTransfiniteVolume(), adaptMeshGRegion::operator()(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), optimizeMesh(), RelocateVertices(), RelocateVerticesOfPyramids(), removeElement(), removeElements(), reorder(), setHighOrder(), Subdivide(), SubdivideExtrudedMesh(), and ghostRegion::~ghostRegion().
std::vector<std::vector<std::vector<MVertex *> > > GRegion::transfinite_vertices |
Definition at line 161 of file GRegion.h.
Referenced by deleteMesh(), MeshTransfiniteVolume(), GModel::readP3D(), and GModel::writeP3D().
std::vector<MTrihedron *> GRegion::trihedra |
Definition at line 167 of file GRegion.h.
Referenced by initMeshGRegion::_estimateNumLines(), initMeshGRegion::_estimateNumTriangles(), GModel::_storeElementsInEntities(), addTrihedron(), copy_elements(), deleteMesh(), getMeshElement(), getMeshElementByType(), getNumMeshElements(), getNumMeshElementsByType(), getStartElementType(), GModel::makeDiscreteRegionsSimplyConnected(), initMeshGRegion::operator()(), drawMeshGRegion::operator()(), removeElement(), removeElements(), reorder(), and ghostRegion::~ghostRegion().