Version: 8.3.0
StdMeshers_ViscousLayers2D Class Reference

Hypothesis defining parameters of viscous layers. More...

#include <StdMeshers_ViscousLayers2D.hxx>

Inheritance diagram for StdMeshers_ViscousLayers2D:

Public Types

enum  ExtrusionMethod { SURF_OFFSET_SMOOTH, FACE_OFFSET, NODE_OFFSET }
 
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
}
 

Public Member Functions

 StdMeshers_ViscousLayers2D (int hypId, int studyId, SMESH_Gen *gen)
 
void RestoreListeners () const
 At study restoration, restore event listeners used to clear an inferior dim sub-mesh modified by viscous layers. More...
 
virtual bool SetParametersByMesh (const SMESH_Mesh *theMesh, const TopoDS_Shape &theShape)
 Initialize my parameter values by the mesh built on the geometry. More...
 
virtual bool SetParametersByDefaults (const TDefaults &dflts, const SMESH_Mesh *theMesh=0)
 Initialize my parameter values by default parameters. More...
 
void SetBndShapes (const std::vector< int > &shapeIds, bool toIgnore)
 
std::vector< intGetBndShapes () const
 
bool IsToIgnoreShapes () const
 
void SetTotalThickness (double thickness)
 
double GetTotalThickness () const
 
void SetNumberLayers (int nb)
 
int GetNumberLayers () const
 
void SetStretchFactor (double factor)
 
double GetStretchFactor () const
 
void SetMethod (ExtrusionMethod how)
 
ExtrusionMethod GetMethod () const
 
SMESH_ProxyMesh::Ptr Compute (SMESH_Mesh &theMesh, const TopoDS_Shape &theShape, const bool toMakeN2NMap=false) const
 
bool IsShapeWithLayers (int shapeIndex) const
 
virtual std::ostream & SaveTo (std::ostream &save)
 
virtual std::istream & LoadFrom (std::istream &load)
 
virtual int GetDim () const
 
int GetStudyId () const
 
SMESH_GenGetGen () const
 
virtual int GetShapeType () const
 
virtual const char * GetLibName () const
 
virtual void NotifySubMeshesHypothesisModification ()
 
void SetLibName (const char *theLibName)
 
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. More...
 
virtual bool IsAuxiliary () const
 Return true if me is an auxiliary hypothesis. More...
 
SMESH_MeshGetMeshByPersistentID (int id)
 Find a mesh with given persistent ID. More...
 
const char * GetName () const
 
int GetID () const
 
int GetType () const
 
bool IsSameName (const SMESHDS_Hypothesis &other) const
 Compare types of hypotheses. More...
 
virtual bool operator== (const SMESHDS_Hypothesis &other) const
 Equality. More...
 
bool operator!= (const SMESHDS_Hypothesis &other) const
 

Static Public Member Functions

static SMESH_ProxyMesh::Ptr Compute (SMESH_Mesh &theMesh, const TopoDS_Face &theShape)
 Computes temporary 2D mesh to be used by 2D algorithm. More...
 
static SMESH_ComputeErrorPtr CheckHypothesis (SMESH_Mesh &aMesh, const TopoDS_Shape &aShape, Hypothesis_Status &aStatus)
 Checks compatibility of assigned StdMeshers_ViscousLayers2D hypotheses. More...
 
static const char * GetHypType ()
 
static void SetProxyMeshOfEdge (const StdMeshers_FaceSide &edgeNodes)
 
static bool HasProxyMesh (const TopoDS_Face &face, SMESH_Mesh &theMesh)
 
static bool IsStatusFatal (Hypothesis_Status theStatus)
 

Protected Attributes

SMESH_Gen_gen
 
int _studyId
 
int _shapeType
 
int _param_algo_dim
 
std::string _name
 
int _hypId
 
hypothesis_type _type
 

Detailed Description

Hypothesis defining parameters of viscous layers.

Member Enumeration Documentation

Enumerator
SURF_OFFSET_SMOOTH 
FACE_OFFSET 
NODE_OFFSET 
Enumerator
HYP_OK 
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 
Enumerator
PARAM_ALGO 
ALGO_0D 
ALGO_1D 
ALGO_2D 
ALGO_3D 

Constructor & Destructor Documentation

StdMeshers_ViscousLayers2D::StdMeshers_ViscousLayers2D ( int  hypId,
int  studyId,
SMESH_Gen gen 
)

Member Function Documentation

SMESH_ProxyMesh::Ptr StdMeshers_ViscousLayers2D::Compute ( SMESH_Mesh theMesh,
const TopoDS_Face &  theShape 
)
static
SMESH_ProxyMesh::Ptr StdMeshers_ViscousLayers::Compute ( SMESH_Mesh theMesh,
const TopoDS_Shape &  theShape,
const bool  toMakeN2NMap = false 
) const
inherited
virtual bool SMESH_Hypothesis::DataDependOnParams ( ) const
virtualinherited

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.

Reimplemented in StdMeshers_ImportSource1D.

std::vector<int> StdMeshers_ViscousLayers::GetBndShapes ( ) const
inherited
int SMESH_Hypothesis::GetDim ( ) const
virtualinherited
SMESH_Gen* SMESH_Hypothesis::GetGen ( ) const
inherited
static const char* StdMeshers_ViscousLayers2D::GetHypType ( )
static
int SMESHDS_Hypothesis::GetID ( ) const
inherited
virtual const char* SMESH_Hypothesis::GetLibName ( ) const
virtualinherited
SMESH_Mesh * SMESH_Hypothesis::GetMeshByPersistentID ( int  id)
inherited

Find a mesh with given persistent ID.

References studyContextStruct::mapMesh.

ExtrusionMethod StdMeshers_ViscousLayers::GetMethod ( ) const
inherited
int SMESH_Hypothesis::GetShapeType ( ) const
virtualinherited
double StdMeshers_ViscousLayers::GetStretchFactor ( ) const
inherited
int SMESH_Hypothesis::GetStudyId ( ) const
inherited
double StdMeshers_ViscousLayers::GetTotalThickness ( ) const
inherited
int SMESHDS_Hypothesis::GetType ( ) const
inherited
bool StdMeshers_ViscousLayers2D::HasProxyMesh ( const TopoDS_Face &  face,
SMESH_Mesh theMesh 
)
static
virtual bool SMESH_Hypothesis::IsAuxiliary ( ) const
virtualinherited

Return true if me is an auxiliary hypothesis.

Return values
bool- auxiliary or not

An auxiliary hypothesis is optional, i.e. an algorithm can work without it and another hypothesis of the same dimension can be assigned to the shape

References SMESHDS_Hypothesis::GetType().

bool SMESHDS_Hypothesis::IsSameName ( const SMESHDS_Hypothesis other) const
inherited

Compare types of hypotheses.

References SMESHDS_Hypothesis::_name.

Referenced by StdMeshers_Regular_1D::CheckHypothesis().

bool StdMeshers_ViscousLayers::IsShapeWithLayers ( int  shapeIndex) const
inherited
bool StdMeshers_ViscousLayers::IsToIgnoreShapes ( ) const
inherited
std::istream & StdMeshers_ViscousLayers::LoadFrom ( std::istream &  load)
virtualinherited

Implements SMESHDS_Hypothesis.

References faceID.

void SMESH_Hypothesis::NotifySubMeshesHypothesisModification ( )
virtualinherited
bool SMESHDS_Hypothesis::operator!= ( const SMESHDS_Hypothesis other) const
inherited
bool SMESHDS_Hypothesis::operator== ( const SMESHDS_Hypothesis other) const
virtualinherited

Equality.

References SMESHDS_Hypothesis::_name.

void StdMeshers_ViscousLayers2D::RestoreListeners ( ) const

At study restoration, restore event listeners used to clear an inferior dim sub-mesh modified by viscous layers.

References studyContextStruct::mapMesh, and VISCOUS_3D::ToClearSubWithMain().

std::ostream & StdMeshers_ViscousLayers::SaveTo ( std::ostream &  save)
virtualinherited

Implements SMESHDS_Hypothesis.

void StdMeshers_ViscousLayers::SetBndShapes ( const std::vector< int > &  shapeIds,
bool  toIgnore 
)
inherited
void SMESH_Hypothesis::SetLibName ( const char *  theLibName)
inherited
void StdMeshers_ViscousLayers::SetMethod ( ExtrusionMethod  how)
inherited
void StdMeshers_ViscousLayers::SetNumberLayers ( int  nb)
inherited
virtual bool StdMeshers_ViscousLayers2D::SetParametersByDefaults ( const TDefaults dflts,
const SMESH_Mesh theMesh = 0 
)
virtual

Initialize my parameter values by default parameters.

Return values
bool- true if parameter values have been successfully defined

Reimplemented from StdMeshers_ViscousLayers.

bool StdMeshers_ViscousLayers2D::SetParametersByMesh ( const SMESH_Mesh theMesh,
const TopoDS_Shape &  theShape 
)
virtual

Initialize my parameter values by the mesh built on the geometry.

Parameters
theMesh- the built mesh
theShape- the geometry of interest
Return values
bool- true if parameter values have been successfully defined

Just return false as this hypothesis does not have parameters values

Reimplemented from StdMeshers_ViscousLayers.

void StdMeshers_ViscousLayers::SetStretchFactor ( double  factor)
inherited
void StdMeshers_ViscousLayers::SetTotalThickness ( double  thickness)
inherited

Field Documentation

SMESH_Gen* SMESH_Hypothesis::_gen
protectedinherited
int SMESHDS_Hypothesis::_hypId
protectedinherited
std::string SMESHDS_Hypothesis::_name
protectedinherited

Referenced by SMESHDS_Hypothesis::IsSameName(), SMESHDS_Hypothesis::operator==(), StdMeshers_Adaptive1D::StdMeshers_Adaptive1D(), StdMeshers_Arithmetic1D::StdMeshers_Arithmetic1D(), StdMeshers_AutomaticLength::StdMeshers_AutomaticLength(), StdMeshers_Cartesian_3D::StdMeshers_Cartesian_3D(), StdMeshers_CartesianParameters3D::StdMeshers_CartesianParameters3D(), StdMeshers_CompositeHexa_3D::StdMeshers_CompositeHexa_3D(), StdMeshers_CompositeSegment_1D::StdMeshers_CompositeSegment_1D(), StdMeshers_Deflection1D::StdMeshers_Deflection1D(), StdMeshers_FixedPoints1D::StdMeshers_FixedPoints1D(), StdMeshers_Geometric1D::StdMeshers_Geometric1D(), StdMeshers_Hexa_3D::StdMeshers_Hexa_3D(), StdMeshers_HexaFromSkin_3D::StdMeshers_HexaFromSkin_3D(), StdMeshers_Import_1D::StdMeshers_Import_1D(), StdMeshers_Import_1D2D::StdMeshers_Import_1D2D(), StdMeshers_ImportSource1D::StdMeshers_ImportSource1D(), StdMeshers_ImportSource2D::StdMeshers_ImportSource2D(), StdMeshers_LayerDistribution::StdMeshers_LayerDistribution(), StdMeshers_LayerDistribution2D::StdMeshers_LayerDistribution2D(), StdMeshers_LengthFromEdges::StdMeshers_LengthFromEdges(), StdMeshers_LocalLength::StdMeshers_LocalLength(), StdMeshers_MaxElementArea::StdMeshers_MaxElementArea(), StdMeshers_MaxElementVolume::StdMeshers_MaxElementVolume(), StdMeshers_MaxLength::StdMeshers_MaxLength(), StdMeshers_MEFISTO_2D::StdMeshers_MEFISTO_2D(), StdMeshers_NotConformAllowed::StdMeshers_NotConformAllowed(), StdMeshers_NumberOfLayers::StdMeshers_NumberOfLayers(), StdMeshers_NumberOfLayers2D::StdMeshers_NumberOfLayers2D(), StdMeshers_NumberOfSegments::StdMeshers_NumberOfSegments(), StdMeshers_PolygonPerFace_2D::StdMeshers_PolygonPerFace_2D(), StdMeshers_Prism_3D::StdMeshers_Prism_3D(), StdMeshers_Projection_1D::StdMeshers_Projection_1D(), StdMeshers_Projection_1D2D::StdMeshers_Projection_1D2D(), StdMeshers_Projection_2D::StdMeshers_Projection_2D(), StdMeshers_Projection_3D::StdMeshers_Projection_3D(), StdMeshers_ProjectionSource1D::StdMeshers_ProjectionSource1D(), StdMeshers_ProjectionSource2D::StdMeshers_ProjectionSource2D(), StdMeshers_ProjectionSource3D::StdMeshers_ProjectionSource3D(), StdMeshers_Propagation::StdMeshers_Propagation(), StdMeshers_PropagOfDistribution::StdMeshers_PropagOfDistribution(), StdMeshers_QuadFromMedialAxis_1D2D::StdMeshers_QuadFromMedialAxis_1D2D(), StdMeshers_Quadrangle_2D::StdMeshers_Quadrangle_2D(), StdMeshers_QuadrangleParams::StdMeshers_QuadrangleParams(), StdMeshers_QuadranglePreference::StdMeshers_QuadranglePreference(), StdMeshers_QuadraticMesh::StdMeshers_QuadraticMesh(), StdMeshers_RadialPrism_3D::StdMeshers_RadialPrism_3D(), StdMeshers_RadialQuadrangle_1D2D::StdMeshers_RadialQuadrangle_1D2D(), StdMeshers_Regular_1D::StdMeshers_Regular_1D(), StdMeshers_StartEndLength::StdMeshers_StartEndLength(), StdMeshers_ViscousLayers::StdMeshers_ViscousLayers(), and StdMeshers_ViscousLayers2D().

int SMESH_Hypothesis::_param_algo_dim
protectedinherited

Referenced by SMESH_Hypothesis::SMESH_Hypothesis(), StdMeshers_Adaptive1D::StdMeshers_Adaptive1D(), StdMeshers_Arithmetic1D::StdMeshers_Arithmetic1D(), StdMeshers_AutomaticLength::StdMeshers_AutomaticLength(), StdMeshers_CartesianParameters3D::StdMeshers_CartesianParameters3D(), StdMeshers_Deflection1D::StdMeshers_Deflection1D(), StdMeshers_FixedPoints1D::StdMeshers_FixedPoints1D(), StdMeshers_ImportSource1D::StdMeshers_ImportSource1D(), StdMeshers_ImportSource2D::StdMeshers_ImportSource2D(), StdMeshers_LayerDistribution::StdMeshers_LayerDistribution(), StdMeshers_LayerDistribution2D::StdMeshers_LayerDistribution2D(), StdMeshers_LengthFromEdges::StdMeshers_LengthFromEdges(), StdMeshers_LocalLength::StdMeshers_LocalLength(), StdMeshers_MaxElementArea::StdMeshers_MaxElementArea(), StdMeshers_MaxElementVolume::StdMeshers_MaxElementVolume(), StdMeshers_MaxLength::StdMeshers_MaxLength(), StdMeshers_NotConformAllowed::StdMeshers_NotConformAllowed(), StdMeshers_NumberOfLayers::StdMeshers_NumberOfLayers(), StdMeshers_NumberOfLayers2D::StdMeshers_NumberOfLayers2D(), StdMeshers_NumberOfSegments::StdMeshers_NumberOfSegments(), StdMeshers_ProjectionSource1D::StdMeshers_ProjectionSource1D(), StdMeshers_ProjectionSource2D::StdMeshers_ProjectionSource2D(), StdMeshers_ProjectionSource3D::StdMeshers_ProjectionSource3D(), StdMeshers_Propagation::StdMeshers_Propagation(), StdMeshers_QuadrangleParams::StdMeshers_QuadrangleParams(), StdMeshers_QuadranglePreference::StdMeshers_QuadranglePreference(), StdMeshers_QuadraticMesh::StdMeshers_QuadraticMesh(), StdMeshers_Reversible1D::StdMeshers_Reversible1D(), StdMeshers_StartEndLength::StdMeshers_StartEndLength(), StdMeshers_ViscousLayers::StdMeshers_ViscousLayers(), and StdMeshers_ViscousLayers2D().

int SMESH_Hypothesis::_studyId
protectedinherited