#include <SMESH_Hypothesis.hxx>
Classes | |
struct | TDefaults |
Public Types | |
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 } |
Public Types inherited from SMESHDS_Hypothesis | |
enum | hypothesis_type { PARAM_ALGO , ALGO_0D , ALGO_1D , ALGO_2D , ALGO_3D } |
Public Member Functions | |
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) |
virtual bool | SetParametersByDefaults (const TDefaults &dflts, const SMESH_Mesh *theMesh=0)=0 |
Initialize my parameter values by default parameters. More... | |
virtual bool | SetParametersByMesh (const SMESH_Mesh *theMesh, const TopoDS_Shape &theShape)=0 |
Initialize my parameter values by the mesh built on the geometry. More... | |
SMESH_Hypothesis (int hypId, int studyId, SMESH_Gen *gen) | |
virtual | ~SMESH_Hypothesis () |
Public Member Functions inherited from SMESHDS_Hypothesis | |
int | GetID () const |
const char * | GetName () const |
int | GetType () const |
bool | IsSameName (const SMESHDS_Hypothesis &other) const |
Compare types of hypotheses. More... | |
virtual std::istream & | LoadFrom (std::istream &load)=0 |
bool | operator!= (const SMESHDS_Hypothesis &other) const |
virtual bool | operator== (const SMESHDS_Hypothesis &other) const |
virtual std::ostream & | SaveTo (std::ostream &save)=0 |
SMESHDS_Hypothesis (int hypId) | |
virtual | ~SMESHDS_Hypothesis () |
Static Public Member Functions | |
static bool | IsStatusFatal (Hypothesis_Status theStatus) |
|
virtual |
References studyContextStruct::mapHypothesis.
void SMESH_Hypothesis::ClearParameters | ( | ) |
|
virtual |
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.
Referenced by SMESH_Mesh::NotifySubMeshesHypothesisModification().
|
virtual |
References SMESHDS_Hypothesis::ALGO_1D, SMESHDS_Hypothesis::ALGO_2D, SMESHDS_Hypothesis::ALGO_3D, and SMESHDS_Hypothesis::PARAM_ALGO.
Referenced by SMESH_Mesh::AddHypothesis(), SMESH_subMesh::AlgoStateEngine(), SMESH_subMesh::CanAddHypothesis(), SMESH_Gen::GetAlgoState(), SMESH_subMesh::getSimilarAttached(), SMESH_subMesh::IsApplicableHypotesis(), SMESH_HypoFilter::IsMoreLocalThanPredicate::IsOk(), SMESH_Mesh::RemoveHypothesis(), SMESH_Gen::TAlgoStateError::Set(), StdMeshers_LayerDistribution::SetLayerDistribution(), and SMESH_HypoFilter::DimPredicate::Value().
SMESH_Gen * SMESH_Hypothesis::GetGen | ( | ) | const |
char * SMESH_Hypothesis::GetLastParameters | ( | ) | const |
|
virtual |
SMESH_Mesh * SMESH_Hypothesis::GetMeshByPersistentID | ( | int | id | ) |
Find a mesh with given persistent ID.
References studyContextStruct::mapMesh.
Referenced by StdMeshers_Import_1D::Compute(), and StdMeshers_Import_1D2D::Compute().
char * SMESH_Hypothesis::GetParameters | ( | ) | const |
|
virtual |
Referenced by SMESH_subMesh::IsApplicableHypotesis().
int SMESH_Hypothesis::GetStudyId | ( | ) | const |
Referenced by StdMeshers_Hexa_3D::Compute().
|
virtual |
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().
Referenced by SMESH_subMesh::AlgoStateEngine(), StdMeshers_Regular_1D::CheckHypothesis(), SMESH_subMesh::getSimilarAttached(), SMESH_HypoFilter::IsAuxiliaryPredicate::IsOk(), SMESH_Mesh::IsUsedHypothesis(), and SMESH_Mesh::NotifySubMeshesHypothesisModification().
|
static |
|
virtual |
References studyContextStruct::mapMesh.
Referenced by NETGENPlugin_SimpleHypothesis_2D::LengthFromEdges(), NETGENPlugin_SimpleHypothesis_3D::LengthFromFaces(), NETGENPlugin_SimpleHypothesis_2D::SetAllowQuadrangles(), StdMeshers_CartesianParameters3D::SetAxisDirs(), StdMeshers_ViscousLayers::SetBndShapes(), StdMeshers_Geometric1D::SetCommonRatio(), StdMeshers_NumberOfSegments::SetConversionMode(), StdMeshers_ImportSource1D::SetCopySourceMesh(), StdMeshers_Adaptive1D::SetDeflection(), StdMeshers_Deflection1D::SetDeflection(), StdMeshers_NumberOfSegments::SetDistrType(), StdMeshers_QuadrangleParams::SetEnforcedNodes(), StdMeshers_NumberOfSegments::SetExpressionFunction(), StdMeshers_AutomaticLength::SetFineness(), NETGENPlugin_Hypothesis::SetFineness(), StdMeshers_CartesianParameters3D::SetFixedPoint(), NETGENPlugin_Hypothesis::SetFuseEdges(), StdMeshers_CartesianParameters3D::SetGrid(), StdMeshers_CartesianParameters3D::SetGridSpacing(), StdMeshers_ImportSource1D::SetGroups(), NETGENPlugin_Hypothesis::SetGrowthRate(), StdMeshers_LayerDistribution::SetLayerDistribution(), StdMeshers_LocalLength::SetLength(), StdMeshers_MaxLength::SetLength(), StdMeshers_SegmentLengthAroundVertex::SetLength(), StdMeshers_Arithmetic1D::SetLength(), StdMeshers_StartEndLength::SetLength(), NETGENPlugin_SimpleHypothesis_2D::SetLocalLength(), NETGENPlugin_Hypothesis::SetLocalSizeOnEntry(), StdMeshers_MaxElementArea::SetMaxArea(), NETGENPlugin_SimpleHypothesis_2D::SetMaxElementArea(), NETGENPlugin_SimpleHypothesis_3D::SetMaxElementVolume(), StdMeshers_Adaptive1D::SetMaxSize(), NETGENPlugin_Hypothesis::SetMaxSize(), StdMeshers_MaxElementVolume::SetMaxVolume(), StdMeshers_ViscousLayers::SetMethod(), StdMeshers_Adaptive1D::SetMinSize(), NETGENPlugin_Hypothesis::SetMinSize(), StdMeshers_LengthFromEdges::SetMode(), StdMeshers_FixedPoints1D::SetNbSegments(), NETGENPlugin_Hypothesis::SetNbSegPerEdge(), NETGENPlugin_Hypothesis::SetNbSegPerRadius(), StdMeshers_ViscousLayers::SetNumberLayers(), StdMeshers_NumberOfLayers::SetNumberOfLayers(), NETGENPlugin_SimpleHypothesis_2D::SetNumberOfSegments(), StdMeshers_NumberOfSegments::SetNumberOfSegments(), NETGENPlugin_Hypothesis::SetOptimize(), StdMeshers_FixedPoints1D::SetPoints(), StdMeshers_LocalLength::SetPrecision(), NETGENPlugin_Hypothesis::SetQuadAllowed(), StdMeshers_QuadrangleParams::SetQuadType(), StdMeshers_Reversible1D::SetReversedEdges(), StdMeshers_Arithmetic1D::SetReversedEdges(), StdMeshers_FixedPoints1D::SetReversedEdges(), StdMeshers_NumberOfSegments::SetReversedEdges(), StdMeshers_StartEndLength::SetReversedEdges(), StdMeshers_NumberOfSegments::SetScaleFactor(), NETGENPlugin_Hypothesis::SetSecondOrder(), StdMeshers_CartesianParameters3D::SetSizeThreshold(), StdMeshers_ProjectionSource3D::SetSource3DShape(), StdMeshers_ProjectionSource1D::SetSourceEdge(), StdMeshers_ProjectionSource2D::SetSourceFace(), StdMeshers_ProjectionSource1D::SetSourceMesh(), StdMeshers_ProjectionSource2D::SetSourceMesh(), StdMeshers_ProjectionSource3D::SetSourceMesh(), StdMeshers_Geometric1D::SetStartLength(), StdMeshers_ViscousLayers::SetStretchFactor(), NETGENPlugin_Hypothesis::SetSurfaceCurvature(), StdMeshers_NumberOfSegments::SetTableFunction(), StdMeshers_CartesianParameters3D::SetToAddEdges(), StdMeshers_ViscousLayers::SetTotalThickness(), StdMeshers_QuadrangleParams::SetTriaVertex(), StdMeshers_ProjectionSource1D::SetVertexAssociation(), StdMeshers_ProjectionSource2D::SetVertexAssociation(), StdMeshers_ProjectionSource3D::SetVertexAssociation(), and NETGENPlugin_Hypothesis::UnsetLocalSizeOnEntry().
void SMESH_Hypothesis::SetLastParameters | ( | const char * | theParameters | ) |
Referenced by SetParameters().
void SMESH_Hypothesis::SetLibName | ( | const char * | theLibName | ) |
void SMESH_Hypothesis::SetParameters | ( | const char * | theParameters | ) |
References SetLastParameters().
|
pure virtual |
Initialize my parameter values by default parameters.
bool | - true if parameter values have been successfully defined |
Implemented in NETGENPlugin_Hypothesis, NETGENPlugin_SimpleHypothesis_2D, SMESH_Algo, StdMeshers_Adaptive1D, StdMeshers_Arithmetic1D, StdMeshers_AutomaticLength, StdMeshers_CartesianParameters3D, StdMeshers_Deflection1D, StdMeshers_FixedPoints1D, StdMeshers_Geometric1D, StdMeshers_ImportSource1D, StdMeshers_LayerDistribution, StdMeshers_LengthFromEdges, StdMeshers_LocalLength, StdMeshers_MaxElementArea, StdMeshers_MaxElementVolume, StdMeshers_MaxLength, StdMeshers_NotConformAllowed, StdMeshers_NumberOfLayers, StdMeshers_NumberOfSegments, StdMeshers_ProjectionSource1D, StdMeshers_ProjectionSource2D, StdMeshers_ProjectionSource3D, StdMeshers_Propagation, StdMeshers_QuadrangleParams, StdMeshers_QuadranglePreference, StdMeshers_QuadraticMesh, StdMeshers_SegmentLengthAroundVertex, StdMeshers_StartEndLength, StdMeshers_TrianglePreference, StdMeshers_ViscousLayers, and StdMeshers_ViscousLayers2D.
Referenced by StdMeshers_LayerDistribution::SetParametersByDefaults().
|
pure 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 |
Implemented in NETGENPlugin_Hypothesis, NETGENPlugin_SimpleHypothesis_2D, NETGENPlugin_SimpleHypothesis_3D, SMESH_Algo, StdMeshers_Adaptive1D, StdMeshers_Arithmetic1D, StdMeshers_AutomaticLength, StdMeshers_CartesianParameters3D, StdMeshers_Deflection1D, StdMeshers_FixedPoints1D, StdMeshers_Geometric1D, StdMeshers_ImportSource1D, StdMeshers_LayerDistribution, StdMeshers_LengthFromEdges, StdMeshers_LocalLength, StdMeshers_MaxElementArea, StdMeshers_MaxElementVolume, StdMeshers_MaxLength, StdMeshers_NotConformAllowed, StdMeshers_NumberOfLayers, StdMeshers_NumberOfSegments, StdMeshers_ProjectionSource1D, StdMeshers_ProjectionSource2D, StdMeshers_ProjectionSource3D, StdMeshers_Propagation, StdMeshers_QuadrangleParams, StdMeshers_QuadranglePreference, StdMeshers_QuadraticMesh, StdMeshers_SegmentLengthAroundVertex, StdMeshers_StartEndLength, StdMeshers_TrianglePreference, StdMeshers_ViscousLayers, and StdMeshers_ViscousLayers2D.