Hypothesis defining parameters of viscous layers. More...
#include <StdMeshers_ViscousLayers2D.hxx>
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< int > | GetBndShapes () 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_Gen * | GetGen () 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_Mesh * | GetMeshByPersistentID (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 |
Hypothesis defining parameters of viscous layers.
|
inherited |
|
inherited |
|
inherited |
References SMESHDS_Hypothesis::_name, SMESH_Hypothesis::_param_algo_dim, and GetHypType().
|
static |
Checks compatibility of assigned StdMeshers_ViscousLayers2D hypotheses.
References VISCOUS_2D::_ViscousBuilder2D::_faceSideVec, COMPERR_OK, Face, VISCOUS_2D::_ViscousBuilder2D::findEdgesWithLayers(), VISCOUS_2D::findHyps(), VISCOUS_2D::_ViscousBuilder2D::GetError(), StdMeshers_FaceSide::GetFaceWires(), SMESH_Hypothesis::HYP_INCOMPAT_HYPS, SMESH_Hypothesis::HYP_OK, and SMESH_ComputeError::New().
Referenced by StdMeshers_MEFISTO_2D::CheckHypothesis(), and StdMeshers_Quadrangle_2D::CheckHypothesis().
|
static |
Computes temporary 2D mesh to be used by 2D algorithm.
Return SMESH_ProxyMesh for the given FACE, or NULL in case of error
References VISCOUS_2D::_ViscousBuilder2D::Compute(), VISCOUS_2D::findHyps(), VISCOUS_2D::_ProxyMeshHolder::FindProxyMeshOfFace(), and VISCOUS_2D::_ViscousBuilder2D::GetError().
Referenced by StdMeshers_PolygonPerFace_2D::Compute(), StdMeshers_MEFISTO_2D::Compute(), and StdMeshers_Quadrangle_2D::Compute().
|
inherited |
|
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.
|
inherited |
|
virtualinherited |
Referenced by SMESH_Gen::TAlgoStateError::Set().
|
inherited |
Referenced by StdMeshers_Hexa_3D::Compute().
|
static |
Referenced by VISCOUS_2D::findHyps(), and StdMeshers_ViscousLayers2D().
|
inherited |
Referenced by SMESHDS_Document::AddHypothesis().
|
virtualinherited |
|
inherited |
Find a mesh with given persistent ID.
References studyContextStruct::mapMesh.
|
inherited |
|
inherited |
Referenced by StdMeshers_Projection_3D::CheckHypothesis(), StdMeshers_Projection_2D::CheckHypothesis(), StdMeshers_Import_1D2D::CheckHypothesis(), StdMeshers_Import_1D::CheckHypothesis(), StdMeshers_Projection_1D::CheckHypothesis(), StdMeshers_RadialQuadrangle_1D2D::CheckHypothesis(), StdMeshers_RadialPrism_3D::CheckHypothesis(), StdMeshers_Regular_1D::CheckHypothesis(), StdMeshers_MEFISTO_2D::CheckHypothesis(), and StdMeshers_Quadrangle_2D::CheckHypothesis().
|
inherited |
|
virtualinherited |
|
inherited |
Referenced by VISCOUS_2D::_ViscousBuilder2D::calcLayersHeight().
|
inherited |
|
inherited |
|
inherited |
Referenced by checkConformIgnoredAlgos(), SMESH_Hypothesis::IsAuxiliary(), and SMESH_Mesh::IsUsedHypothesis().
|
static |
|
virtualinherited |
Return true if me is an auxiliary hypothesis.
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().
|
inherited |
Compare types of hypotheses.
References SMESHDS_Hypothesis::_name.
Referenced by StdMeshers_Regular_1D::CheckHypothesis().
|
staticinherited |
|
inherited |
|
virtualinherited |
Implements SMESHDS_Hypothesis.
References faceID.
|
virtualinherited |
References studyContextStruct::mapMesh.
Referenced by StdMeshers_Reversible1D::SetReversedEdges(), and StdMeshers_ProjectionSource2D::SetSourceMesh().
|
inherited |
|
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().
|
virtualinherited |
Implements SMESHDS_Hypothesis.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
virtual |
Initialize my parameter values by default parameters.
bool | - true if parameter values have been successfully defined |
Reimplemented from StdMeshers_ViscousLayers.
|
virtual |
Initialize my parameter values by the mesh built on the geometry.
theMesh | - the built mesh |
theShape | - the geometry of interest |
bool | - true if parameter values have been successfully defined |
Just return false as this hypothesis does not have parameters values
Reimplemented from StdMeshers_ViscousLayers.
|
static |
References StdMeshers_FaceSide::EdgeID(), StdMeshers_FaceSide::Face(), VISCOUS_2D::_ProxyMeshHolder::FindProxyMeshOfFace(), StdMeshers_FaceSide::GetMesh(), StdMeshers_FaceSide::GetUVPtStruct(), and VISCOUS_2D::_ProxyMeshOfFace::_EdgeSubMesh::GetUVPtStructVec().
Referenced by VISCOUS_3D::_ViscousBuilder::shrink().
|
inherited |
|
inherited |
|
protectedinherited |
Referenced by SMESH_Hypothesis::SMESH_Hypothesis().
|
protectedinherited |
|
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().
|
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().
|
protectedinherited |
Referenced by SMESH_0D_Algo::SMESH_0D_Algo(), SMESH_1D_Algo::SMESH_1D_Algo(), SMESH_2D_Algo::SMESH_2D_Algo(), SMESH_3D_Algo::SMESH_3D_Algo(), SMESH_Hypothesis::SMESH_Hypothesis(), StdMeshers_Cartesian_3D::StdMeshers_Cartesian_3D(), StdMeshers_CompositeHexa_3D::StdMeshers_CompositeHexa_3D(), StdMeshers_Hexa_3D::StdMeshers_Hexa_3D(), StdMeshers_Import_1D::StdMeshers_Import_1D(), StdMeshers_Import_1D2D::StdMeshers_Import_1D2D(), StdMeshers_MEFISTO_2D::StdMeshers_MEFISTO_2D(), StdMeshers_Prism_3D::StdMeshers_Prism_3D(), StdMeshers_Projection_1D::StdMeshers_Projection_1D(), StdMeshers_Projection_3D::StdMeshers_Projection_3D(), StdMeshers_QuadFromMedialAxis_1D2D::StdMeshers_QuadFromMedialAxis_1D2D(), StdMeshers_Quadrangle_2D::StdMeshers_Quadrangle_2D(), StdMeshers_RadialPrism_3D::StdMeshers_RadialPrism_3D(), StdMeshers_RadialQuadrangle_1D2D::StdMeshers_RadialQuadrangle_1D2D(), and StdMeshers_Regular_1D::StdMeshers_Regular_1D().
|
protectedinherited |
Referenced by SMESH_Hypothesis::SMESH_Hypothesis().
|
protectedinherited |