Geophysical Inversion and Modelling Library
v1.5.2-5-g042d7f36
|
Public Types | |
typedef Pos | HoleMarker |
typedef std::vector< Pos > | HoleMarkerList |
Public Member Functions | |
PolygonFace (const std::vector< Node * > &nodes) | |
virtual uint | dim () const |
virtual uint | rtti () const |
void | insertNode (Node *node, double tol=TOLERANCE) |
void | addSubface (const std::vector< Node * > &nodes, bool isHole=false) |
Index | subfaceCount () const |
const std::vector< Node * > & | subface (Index i) const |
void | addHoleMarker (const RVector3 &pos) |
void | delHoleMarker (const RVector3 &pos) |
const HoleMarkerList & | holeMarkers () const |
HoleMarkerList & | holeMarkers () |
Public Member Functions inherited from GIMLI::Boundary | |
Boundary (const std::vector< Node * > &nodes) | |
virtual uint | parentType () const |
virtual RVector3 | rst (uint i) const |
const Cell & | leftCell () const |
Cell * | leftCell () |
const Cell & | rightCell () const |
Cell * | rightCell () |
void | setLeftCell (Cell *cell) |
void | setRightCell (Cell *cell) |
virtual RVector3 | norm () const |
virtual RVector3 | norm (const Cell &cell) const |
bool | normShowsOutside (const Cell &cell) const |
void | swapNorm (bool withNeighbours=true) |
bool | outside () const |
Public Member Functions inherited from GIMLI::MeshEntity | |
MeshEntity () | |
virtual | ~MeshEntity () |
virtual void | setNodes (const std::vector< Node * > &nodes) |
const std::vector< Node * > & | nodes () const |
Node & | node (uint i) |
Node & | node (uint i) const |
uint | nodeCount () const |
Shape & | shape () |
Shape & | shape () const |
Shape * | pShape () |
RVector3 | rst (uint i) const |
RVector3 | center () const |
double | size () const |
virtual double | attribute () const |
IndexArray | ids () const |
virtual std::vector< PolynomialFunction< double > > | createShapeFunctions () const |
virtual RVector | N (const RVector3 &rst) const |
virtual void | N (const RVector3 &rst, RVector &n) const |
virtual RVector | dNdL (const RVector3 &rst, uint i) const |
virtual RMatrix | dNdL (const RVector3 &rst) const |
double | pot (const RVector3 &p, const RVector &u) const |
RVector3 | vec (const RVector3 &p, const R3Vector &v) const |
RVector3 | grad (const RVector3 &p, const RVector &u) const |
void | setUxCache (const RMatrix &mat) const |
const RMatrix & | uxCache () const |
ElementMatrix< double > & | uCache () |
ElementMatrix< double > & | gradUCache () |
void | changed () |
void | addSecondaryNode (Node *n) |
void | delSecondaryNode (Node *n) |
const std::vector< Node * > & | secondaryNodes () const |
const std::vector< Node * > | allNodes () const |
Index | allNodeCount () const |
virtual bool | enforcePositiveDirection () |
Public Member Functions inherited from GIMLI::BaseEntity | |
BaseEntity (const BaseEntity &ent) | |
BaseEntity & | operator= (const BaseEntity &ent) |
virtual bool | valid () const |
virtual void | setValid (bool valid) |
int | id () const |
void | setId (int id) |
void | setMarker (int marker) |
int | marker () const |
void | setTagged (bool tagged) |
void | untag () |
void | tag () |
bool | tagged () const |
Protected Attributes | |
std::vector< std::vector< Node * > > | subfaces_ |
HoleMarkerList | holeMarker_ |
Protected Attributes inherited from GIMLI::Boundary | |
Cell * | leftCell_ |
Cell * | rightCell_ |
Protected Attributes inherited from GIMLI::MeshEntity | |
Shape * | shape_ |
std::vector< Node * > | nodeVector_ |
std::vector< Node * > | secondaryNodes_ |
ElementMatrix< double > | uCache_ |
ElementMatrix< double > | gradUCache_ |
RMatrix | uxCache_ |
Protected Attributes inherited from GIMLI::BaseEntity | |
int | id_ |
bool | valid_ |
int | marker_ |
bool | tagged_ |
Additional Inherited Members | |
Protected Member Functions inherited from GIMLI::Boundary | |
virtual void | registerNodes_ () |
virtual void | deRegisterNodes_ () |
virtual void | registerSecNode_ (Node *n) |
virtual void | deRegisterSecNode_ (Node *n) |
Boundary (const Boundary &bound) | |
Boundary & | operator= (const Boundary &boundary) |
Protected Member Functions inherited from GIMLI::MeshEntity | |
void | fillShape_ () |
MeshEntity (const MeshEntity &ent) | |
MeshEntity & | operator= (const MeshEntity &ent) |
void GIMLI::PolygonFace::addHoleMarker | ( | const RVector3 & | pos | ) |
Add a hole marker for tetgen or triangle creation if the mesh is a PLC
void GIMLI::PolygonFace::addSubface | ( | const std::vector< Node * > & | nodes, |
bool | isHole = false |
||
) |
Insert nodes for a subpolygon. All nodes regarding the parent mesh and need to be inside the face. If marked as hole the boundary does not become part if nodes boundary set.
|
inlinevirtual |
Return the dimension for this MeshEntity.
Reimplemented from GIMLI::MeshEntity.
|
inline |
Return reference to all defined hole markers.
const PolygonFace::HoleMarkerList & GIMLI::PolygonFace::holeMarkers | ( | ) | const |
Return read only reference for all defined hole regions.
Referenced by GIMLI::Mesh::copyBoundary().
void GIMLI::PolygonFace::insertNode | ( | Node * | node, |
double | tol = TOLERANCE |
||
) |
Insert node into the polygon. Node needs to touch the polygon. The node will be inserted in the nodeList or as secondary node if its not on an edge.
References GIMLI::Pos::distance(), GIMLI::BaseEntity::id(), GIMLI::Node::setState(), and GIMLI::Line::touch1().
|
inlinevirtual |
Return the runtime identification for this MeshEntity.
Reimplemented from GIMLI::Boundary.