Mesher generating 2D elements on a geometrical face taking into account pre-existing nodes on face boundaries. More...
#include <NETGENPlugin_NETGEN_2D_ONLY.hxx>
Public Member Functions | |
virtual void CancelCompute () | |
Sets _computeCanceled to true. It's usage depends on implementation of a particular mesher. More... | |
virtual bool CheckHypothesis (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape, Hypothesis_Status &aStatus) | |
Check hypothesis definition to mesh a shape. More... | |
virtual bool Compute (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape) | |
virtual bool Evaluate (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape, MapShapeNbElems &aResMap) | |
evaluates size of prospective mesh on a shape More... | |
virtual double GetProgress () const | |
Return progress of Compute() [0.,1]. More... | |
NETGENPlugin_NETGEN_2D_ONLY (int hypId, int studyId, SMESH_Gen *gen) | |
virtual ~NETGENPlugin_NETGEN_2D_ONLY () | |
![]() | |
virtual bool FixInternalNodes (const SMESH_ProxyMesh &mesh, const TopoDS_Face &face) | |
Method in which an algorithm generating a structured mesh fixes positions of in-face nodes after there movement due to insertion of viscous layers. More... | |
int NumberOfPoints (SMESH_Mesh &aMesh, const TopoDS_Wire &W) | |
int NumberOfWires (const TopoDS_Shape &S) | |
SMESH_2D_Algo (int hypId, int studyId, SMESH_Gen *gen) | |
SMESH_2D_Algo (int hypId, int studyId, SMESH_Gen *gen) | |
virtual ~SMESH_2D_Algo () | |
![]() | |
virtual bool Compute (SMESH_Mesh &aMesh, SMESH_MesherHelper *aHelper) | |
Computes mesh without geometry. More... | |
const std::list< const SMESHDS_Hypothesis * > & GetAppliedHypothesis (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape, const bool ignoreAuxiliary=true) const | |
Returns a list of compatible hypotheses assigned to a shape in a mesh. More... | |
const SMESH_HypoFilter * GetCompatibleHypoFilter (const bool ignoreAuxiliary) const | |
Returns the filter recognizing only compatible hypotheses. More... | |
const std::vector< std::string > & GetCompatibleHypothesis () | |
Returns all types of compatible hypotheses. More... | |
SMESH_ComputeErrorPtr GetComputeError () const | |
return compute error More... | |
const Features & GetFeatures () const | |
double GetProgressByTic () const | |
Return compute progress by nb of calls of this method. More... | |
virtual const std::list< const SMESHDS_Hypothesis * > & GetUsedHypothesis (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape, const bool ignoreAuxiliary=true) const | |
Returns a list of compatible hypotheses used to mesh a shape. More... | |
void InitComputeError () | |
initialize compute error etc. before call of Compute() More... | |
virtual std::istream & LoadFrom (std::istream &load) | |
Loads nothing from a stream. More... | |
bool NeedDiscreteBoundary () const | |
bool NeedLowerHyps (int dim) const | |
bool NeedShape () const | |
int NumberOfPoints (SMESH_Mesh &aMesh, const TopoDS_Wire &W) | |
bool OnlyUnaryInput () const | |
virtual std::ostream & SaveTo (std::ostream &save) | |
Saves nothing in a stream. More... | |
virtual void SetEventListener (SMESH_subMesh *subMesh) | |
Sets event listener to submeshes if necessary. More... | |
virtual bool SetParametersByDefaults (const TDefaults &dflts, const SMESH_Mesh *theMesh=0) | |
Initialize my parameter values by default parameters. More... | |
virtual bool SetParametersByMesh (const SMESH_Mesh *theMesh, const TopoDS_Shape &theShape) | |
Just return false as the algorithm does not hold parameters values. More... | |
SMESH_Algo (int hypId, int studyId, SMESH_Gen *gen) | |
Creates algorithm. More... | |
std::vector< SMESH_subMesh * > & SubMeshesToCompute () | |
virtual void SubmeshRestored (SMESH_subMesh *subMesh) | |
Allow algo to do something after persistent restoration. More... | |
bool SupportSubmeshes () const | |
virtual ~ SMESH_Algo () | |
Destructor. More... | |
![]() | |
void ClearParameters () | |
virtual bool DataDependOnParams () const | |
The returned value is used by NotifySubMeshesHypothesisModification() to decide to call subMesh->AlgoStateEngine( MODIF_HYP, hyp ) or not if subMesh is ready to be computed (algo+hyp==OK) but not yet computed. True result is reasonable for example if EventListeners depend on parameters of hypothesis. More... | |
virtual int GetDim () const | |
SMESH_Gen * GetGen () const | |
char * GetLastParameters () const | |
virtual const char * GetLibName () const | |
SMESH_Mesh * GetMeshByPersistentID (int id) | |
Find a mesh with given persistent ID. More... | |
char * GetParameters () const | |
virtual int GetShapeType () const | |
int GetStudyId () const | |
virtual bool IsAuxiliary () const | |
Return true if me is an auxiliary hypothesis. More... | |
virtual void NotifySubMeshesHypothesisModification () | |
void SetLastParameters (const char *theParameters) | |
void SetLibName (const char *theLibName) | |
void SetParameters (const char *theParameters) | |
SMESH_Hypothesis (int hypId, int studyId, SMESH_Gen *gen) | |
virtual ~SMESH_Hypothesis () | |
![]() | |
int GetID () const | |
const char * GetName () const | |
int GetType () const | |
bool IsSameName (const SMESHDS_Hypothesis &other) const | |
Compare types of hypotheses. More... | |
bool operator!= (const SMESHDS_Hypothesis &other) const | |
virtual bool operator== (const SMESHDS_Hypothesis &other) const | |
SMESHDS_Hypothesis (int hypId) | |
virtual ~SMESHDS_Hypothesis () | |
Additional Inherited Members | |
![]() | |
enum EMeshError { MEr_OK = 0, MEr_HOLES, MEr_BAD_ORI, MEr_EMPTY } | |
![]() | |
enum Hypothesis_Status { HYP_OK = 0, HYP_MISSING, HYP_CONCURENT, HYP_BAD_PARAMETER, HYP_HIDDEN_ALGO, HYP_HIDING_ALGO, HYP_UNKNOWN_FATAL, HYP_INCOMPATIBLE, HYP_NOTCONFORM, HYP_ALREADY_EXIST, HYP_BAD_DIM, HYP_BAD_SUBSHAPE, HYP_BAD_GEOMETRY, HYP_NEED_SHAPE, HYP_INCOMPAT_HYPS } | |
![]() | |
enum hypothesis_type { PARAM_ALGO, ALGO_0D, ALGO_1D, ALGO_2D, ALGO_3D } | |
![]() | |
static GeomAbs_Shape Continuity (TopoDS_Edge E1, TopoDS_Edge E2) | |
Return continuity of two edges. More... | |
static double EdgeLength (const TopoDS_Edge &E) | |
Compute length of an edge. More... | |
static const Features & GetFeatures (const std::string &algoType) | |
Returns a structure describing algorithm features. More... | |
static EMeshError GetMeshError (SMESH_subMesh *subMesh) | |
Finds topological errors of a sub-mesh. More... | |
static bool GetNodeParamOnEdge (const SMESHDS_Mesh *theMesh, const TopoDS_Edge &theEdge, std::vector< double > &theParams) | |
Fill vector of node parameters on geometrical edge, including vertex nodes. More... | |
static bool GetSortedNodesOnEdge (const SMESHDS_Mesh *theMesh, const TopoDS_Edge &theEdge, const bool ignoreMediumNodes, std::map< double, const SMDS_MeshNode * > &theNodes, const SMDSAbs_ElementType typeToCheck=SMDSAbs_All) | |
Fill map of node parameter on geometrical edge to node it-self. More... | |
static bool IsContinuous (const TopoDS_Edge &E1, const TopoDS_Edge &E2) | |
Return true if an edge can be considered as a continuation of another. More... | |
static bool isDegenerated (const TopoDS_Edge &E) | |
Return true if an edge has no 3D curve. More... | |
static bool IsStraight (const TopoDS_Edge &E, const bool degenResult=false) | |
Return true if an edge can be considered straight. More... | |
static const SMDS_MeshNode * VertexNode (const TopoDS_Vertex &V, const SMESH_Mesh *mesh) | |
Return the node built on a vertex. A node moved to other geometry by MergeNodes() is also returned. More... | |
static const SMDS_MeshNode * VertexNode (const TopoDS_Vertex &V, const SMESHDS_Mesh *meshDS) | |
Return the node built on a vertex. More... | |
static const SMDS_MeshNode * VertexNode (const TopoDS_Vertex &V, const SMESHDS_SubMesh *edgeSM, const SMESH_Mesh *mesh, const bool checkV=true) | |
Return the node built on a vertex. A node moved to other geometry by MergeNodes() is also returned. More... | |
![]() | |
static bool IsStatusFatal (Hypothesis_Status theStatus) | |
![]() | |
void addBadInputElement (const SMDS_MeshElement *elem) | |
store a bad input element preventing computation, which may be a temporary one i.e. not residing the mesh, then it will be deleted by InitComputeError() More... | |
void addBadInputElements (const SMESHDS_SubMesh *sm, const bool addNodes=false) | |
bool error (const SMESH_Comment &comment="") | |
store COMPERR_ALGO_FAILED error and comment and then return false More... | |
bool error (int error, const SMESH_Comment &comment="") | |
store error and comment and then return ( error == COMPERR_OK ) More... | |
bool error (SMESH_ComputeErrorPtr error) | |
store error and return error->IsOK() More... | |
Detailed Description
Mesher generating 2D elements on a geometrical face taking into account pre-existing nodes on face boundaries.
Historically, NETGENPlugin_NETGEN_2D is actually 1D-2D, that is why the class is named NETGENPlugin_NETGEN_2D_ONLY. Renaming is useless as algorithm field "_name" can't be changed
Constructor & Destructor Documentation
◆ NETGENPlugin_NETGEN_2D_ONLY()
NETGENPlugin_NETGEN_2D_ONLY::NETGENPlugin_NETGEN_2D_ONLY | ( | int | hypId, |
int | studyId, | ||
SMESH_Gen * | gen | ||
) |
◆ ~NETGENPlugin_NETGEN_2D_ONLY()
|
virtual |
Member Function Documentation
◆ CancelCompute()
|
virtual |
Sets _computeCanceled to true. It's usage depends on implementation of a particular mesher.
Reimplemented from SMESH_Algo.
References SMESH_Algo::CancelCompute(), and netgen::multithread.
◆ CheckHypothesis()
|
virtual |
Check hypothesis definition to mesh a shape.
- Parameters
-
aMesh - the mesh aShape - the shape aStatus - check result
- Return values
-
bool - true if hypothesis is well defined
Textual description of a problem can be stored in _comment field.
Implements SMESH_Algo.
References StdMeshers_ViscousLayers2D::CheckHypothesis(), StdMeshers_ViscousLayers2D::GetHypType(), and SMESHDS_Hypothesis::GetName().
◆ Compute()
|
virtual |
Here we are going to use the NETGEN mesher
Implements SMESH_Algo.
References SMESH_MesherHelper::AddFace(), SMESHDS_Mesh::AddNode(), NETGENPlugin_Mesher::AddSegmentsToMesh(), StdMeshers_ViscousLayers2D::Compute(), NETGENPlugin_Mesher::FixFaceMesh(), SMESH_subMesh::GetComputeError(), NETGENPlugin_Mesher::GetDefaultMinSize(), SMESHDS_SubMesh::GetElements(), StdMeshers_FaceSide::GetFaceWires(), SMESH_Mesh::GetMeshDS(), SMDS_MeshElement::GetNode(), SMESH_Mesh::GetShapeToMesh(), SMESH_Mesh::GetSubMesh(), SMESH_Algo::isDegenerated(), SMESH_MesherHelper::IsQuadraticSubMesh(), SMESHDS_Mesh::MeshElements(), netgen::mparam, netgen::multithread, netgen::OCCGenerateMesh(), netgen::OCCSetLocalMeshSize(), NETGENPlugin_Mesher::PrepareOCCgeometry(), SMESH_MesherHelper::SetElementsOnShape(), SMESHDS_Mesh::SetNodeOnFace(), NETGENPlugin_Mesher::SetParameters(), and SMESHDS_Mesh::ShapeToIndex().
◆ Evaluate()
|
virtual |
evaluates size of prospective mesh on a shape
- Parameters
-
aMesh - the mesh aShape - the shape aResMap - prospective number of elements by SMDSAbs_ElementType by a sub-mesh
- Return values
-
bool - is a success
Implements SMESH_Algo.
References SMESH_Algo::EdgeLength(), SMESH_subMesh::GetComputeError(), and SMESH_Mesh::GetSubMesh().
◆ GetProgress()
|
virtual |
Return progress of Compute() [0.,1].
Reimplemented from SMESH_Algo.
The documentation for this class was generated from the following files:
- src/3rdParty/salomesmesh/inc/NETGENPlugin_NETGEN_2D_ONLY.hxx
- src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.cpp