Hypothesis for StdMeshers_Quadrangle_2D, forcing construction of quadrangles if the number of nodes on opposite edges is not the same. More...
#include <StdMeshers_QuadranglePreference.hxx>
Public Types | |
enum | Hypothesis_Status { HYP_OK = 0 , HYP_MISSING , HYP_CONCURRENT , 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 | InitWay { BY_MESH , BY_GEOM , BY_AVERAGE_LENGTH } |
enum | hypothesis_type { PARAM_ALGO , ALGO_0D , ALGO_1D , ALGO_2D , ALGO_3D } |
Public Member Functions | |
StdMeshers_QuadranglePreference (int hypId, SMESH_Gen *gen) | |
virtual | ~ StdMeshers_QuadranglePreference () |
virtual std::ostream & | SaveTo (std::ostream &save) |
virtual std::istream & | LoadFrom (std::istream &load) |
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... | |
virtual int | GetDim () 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) const |
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 bool | IsStatusFatal (Hypothesis_Status theStatus) |
static void | SaveStringToStream (std::ostream &save, const std::string &txt) |
Save a string to a stream. More... | |
static bool | LoadStringFromStream (std::istream &load, std::string &txt) |
Load a string from a stream. More... | |
Protected Attributes | |
SMESH_Gen * | _gen |
int | _shapeType |
int | _param_algo_dim |
std::string | _name |
int | _hypId |
hypothesis_type | _type |
Private Attributes | |
std::string | _libName |
Hypothesis for StdMeshers_Quadrangle_2D, forcing construction of quadrangles if the number of nodes on opposite edges is not the same.
GIBI can do it if the global number of nodes is even (DALL operator). See PAL10467
|
inherited |
|
inherited |
|
inherited |
StdMeshers_QuadranglePreference::StdMeshers_QuadranglePreference | ( | int | hypId, |
SMESH_Gen * | gen | ||
) |
References SMESHDS_Hypothesis::_name, and SMESH_Hypothesis::_param_algo_dim.
|
virtual |
|
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.
Referenced by SMESH_Mesh::NotifySubMeshesHypothesisModification().
|
virtualinherited |
References SMESH_Hypothesis::_param_algo_dim, SMESHDS_Hypothesis::_type, SMESHDS_Hypothesis::ALGO_0D, 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(), checkConformIgnoredAlgos(), checkMissing(), VISCOUS_3D::_LayerEdge::ChooseSmooFunction(), SMESH_Mesh_i::findConcurrentSubMeshes(), SMESH_Gen::GetAlgoState(), VISCOUS_3D::getDistFromEdge(), SMESH_Gen_i::GetHypothesisParameterValues(), SMESH_subMesh::getSimilarAttached(), SMESH_subMesh::IsApplicableHypothesis(), SMESH_HypoFilter::IsMoreLocalThanPredicate::IsOk(), SMESH_Mesh::RemoveHypothesis(), SMESH_Gen::TAlgoStateError::Set(), StdMeshers_LayerDistribution::SetLayerDistribution(), and SMESH_HypoFilter::DimPredicate::Value().
|
inherited |
Referenced by SMESH_subMesh::GetAlgo().
|
inherited |
|
virtualinherited |
References SMESH_Hypothesis::_libName.
Referenced by SMESH_Hypothesis_i::GetLibName(), and StdMeshers_LayerDistribution_i::SaveTo().
|
inherited |
Find a mesh with given persistent ID.
References SMESH_Hypothesis::_gen, SMESH_Mesh::GetMeshDS(), SMESHDS_Mesh::GetPersistentId(), SMESH_Gen::GetStudyContext(), and studyContextStruct::mapMesh.
Referenced by StdMeshers_Import_1D::Compute(), and StdMeshers_Import_1D2D::Compute().
|
inherited |
Referenced by SMESH_Mesh::AddHypothesis(), SMESH_subMesh::AlgoStateEngine(), SMESH_subMesh::checkComputeError(), checkConformIgnoredAlgos(), StdMeshers_Quadrangle_2D::CheckHypothesis(), StdMeshers_Import_1D::CheckHypothesis(), StdMeshers_Import_1D2D::CheckHypothesis(), StdMeshers_Projection_1D::CheckHypothesis(), StdMeshers_Projection_2D::CheckHypothesis(), StdMeshers_Projection_3D::CheckHypothesis(), StdMeshers_RadialPrism_3D::CheckHypothesis(), StdMeshers_RadialQuadrangle_1D2D::CheckHypothesis(), StdMeshers_Regular_1D::CheckHypothesis(), checkMissing(), StdMeshers_Hexa_3D::Evaluate(), VISCOUS_3D::_ViscousBuilder::findFacesWithLayers(), StdMeshers_CompositeSegment_1D::GetFaceSide(), SMESH_Mesh::GetHypotheses(), SMESH_Gen_i::GetHypothesisParameterValues(), SMESH_Hypothesis_i::GetName(), SMESH_subMesh::getSimilarAttached(), StdMeshers_ProjectionUtils::InitVertexAssociation(), SMESH_HypoFilter::NamePredicate::IsOk(), StdMeshers_ProjectionUtils::MakeComputed(), StdMeshers_LayerDistribution_i::SaveTo(), and StdMeshers_Cartesian_3D::SetEventListener().
|
virtualinherited |
References SMESH_Hypothesis::_shapeType.
Referenced by SMESH_subMesh::IsApplicableHypothesis().
|
inherited |
Referenced by SMESH_Mesh::AddHypothesis(), SMESH_subMesh::AlgoStateEngine(), checkConformIgnoredAlgos(), SMESH_Mesh_i::findConcurrentSubMeshes(), SMESH_Gen::GetAlgoState(), SMESH_subMesh::getSimilarAttached(), SMESH_subMesh::IsApplicableHypothesis(), SMESH_Hypothesis::IsAuxiliary(), SMESH_Mesh::IsUsedHypothesis(), SMESH_Mesh::RemoveHypothesis(), and SMESH_HypoFilter::TypePredicate::Value().
|
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().
Referenced by SMESH_subMesh::AlgoStateEngine(), StdMeshers_Regular_1D::CheckHypothesis(), SMESH_Mesh::GetHypotheses(), SMESH_subMesh::getSimilarAttached(), SMESH_HypoFilter::IsAuxiliaryPredicate::IsOk(), SMESH_Mesh::IsUsedHypothesis(), and SMESH_Mesh::NotifySubMeshesHypothesisModification().
|
inherited |
Compare types of hypotheses.
References SMESHDS_Hypothesis::_name.
Referenced by StdMeshers_Regular_1D::CheckHypothesis(), and SMESH_subMesh::getCollection().
|
staticinherited |
References SMESH::HYP_UNKNOWN_FATAL.
Referenced by SMESH_Mesh::AddHypothesis(), SMESH_Mesh_i::AddHypothesis(), SMESH_Mesh_i::addHypothesis(), SMESH_subMesh::AlgoStateEngine(), SMESH_Mesh::RemoveHypothesis(), SMESH_Mesh_i::RemoveHypothesis(), SMESH_Mesh_i::removeHypothesis(), and SMESH_subMesh::SubMeshesAlgoStateEngine().
|
virtual |
Implements SMESHDS_Hypothesis.
|
staticinherited |
Load a string from a stream.
|
virtualinherited |
References SMESH_Hypothesis::_gen, SMESH_Gen::GetStudyContext(), studyContextStruct::mapMesh, and SMESH_Mesh::NotifySubMeshesHypothesisModification().
Referenced by SMESH_Hypothesis_i::LoadFrom(), StdMeshers_CartesianParameters3D::SetAxisDirs(), StdMeshers_BlockRenumber::SetBlocksOrientation(), StdMeshers_ViscousLayers::SetBndShapes(), StdMeshers_Geometric1D::SetCommonRatio(), StdMeshers_ImportSource1D::SetCopySourceMesh(), StdMeshers_Adaptive1D::SetDeflection(), StdMeshers_Deflection1D::SetDeflection(), StdMeshers_QuadrangleParams::SetEnforcedNodes(), StdMeshers_AutomaticLength::SetFineness(), StdMeshers_CartesianParameters3D::SetFixedPoint(), StdMeshers_CartesianParameters3D::SetGrid(), StdMeshers_CartesianParameters3D::SetGridSpacing(), StdMeshers_ViscousLayers::SetGroupName(), StdMeshers_ImportSource1D::SetGroups(), StdMeshers_LayerDistribution::SetLayerDistribution(), StdMeshers_LocalLength::SetLength(), StdMeshers_MaxLength::SetLength(), StdMeshers_SegmentLengthAroundVertex::SetLength(), StdMeshers_Arithmetic1D::SetLength(), StdMeshers_StartEndLength::SetLength(), StdMeshers_MaxElementArea::SetMaxArea(), StdMeshers_Adaptive1D::SetMaxSize(), StdMeshers_MaxElementVolume::SetMaxVolume(), StdMeshers_ViscousLayers::SetMethod(), StdMeshers_Adaptive1D::SetMinSize(), StdMeshers_LengthFromEdges::SetMode(), StdMeshers_FixedPoints1D::SetNbSegments(), StdMeshers_ViscousLayers::SetNumberLayers(), StdMeshers_NumberOfLayers::SetNumberOfLayers(), StdMeshers_FixedPoints1D::SetPoints(), StdMeshers_LocalLength::SetPrecision(), StdMeshers_QuadrangleParams::SetQuadType(), StdMeshers_Reversible1D::SetReversedEdges(), 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(), StdMeshers_CartesianParameters3D::SetToAddEdges(), StdMeshers_CartesianParameters3D::SetToConsiderInternalFaces(), StdMeshers_CartesianParameters3D::SetToCreateFaces(), StdMeshers_ViscousLayers::SetTotalThickness(), StdMeshers_CartesianParameters3D::SetToUseThresholdForInternalFaces(), StdMeshers_QuadrangleParams::SetTriaVertex(), StdMeshers_ProjectionSource1D::SetVertexAssociation(), StdMeshers_ProjectionSource2D::SetVertexAssociation(), and StdMeshers_ProjectionSource3D::SetVertexAssociation().
|
inherited |
|
virtualinherited |
Equality.
References SMESHDS_Hypothesis::_name.
|
staticinherited |
Save a string to a stream.
|
virtual |
Implements SMESHDS_Hypothesis.
|
inherited |
References SMESH_Hypothesis::_libName.
Referenced by SMESH_Hypothesis_i::SetLibName().
|
virtual |
Initialize my parameter values by default parameters.
bool | - true if parameter values have been successfully defined |
Implements SMESH_Hypothesis.
|
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
Implements SMESH_Hypothesis.
|
protectedinherited |
Referenced by StdMeshers_Prism_3D::assocOrProjBottom2Top(), StdMeshers_Hexa_3D::Compute(), StdMeshers_Import_1D::Compute(), StdMeshers_Import_1D2D::Compute(), StdMeshers_QuadFromMedialAxis_1D2D::Compute(), StdMeshers_Prism_3D::computeBase(), StdMeshers_RadialQuadrangle_1D2D::computeLayerPositions(), StdMeshers_Hexa_3D::Evaluate(), StdMeshers_Projection_1D2D::Evaluate(), StdMeshers_Projection_2D::Evaluate(), StdMeshers_Adaptive1D::GetAlgo(), StdMeshers_ImportSource1D::GetGroups(), SMESH_Hypothesis::GetMeshByPersistentID(), StdMeshers_ImportSource1D::GetResultGroups(), StdMeshers_ImportSource1D::GetSourceMeshes(), SMESH_Hypothesis::NotifySubMeshesHypothesisModification(), StdMeshers_ImportSource1D::RestoreGroups(), StdMeshers_ViscousLayers2D::RestoreListeners(), SMESH_Hypothesis::SMESH_Hypothesis(), StdMeshers_Hexa_3D::StdMeshers_Hexa_3D(), and SMESH_Hypothesis::~SMESH_Hypothesis().
|
protectedinherited |
Referenced by SMESH_Hypothesis::~SMESH_Hypothesis().
|
privateinherited |
Referenced by SMESH_Hypothesis::GetLibName(), and SMESH_Hypothesis::SetLibName().
|
protectedinherited |
Referenced by SMESHDS_Hypothesis::IsSameName(), SMESHDS_Hypothesis::operator==(), StdMeshers_Adaptive1D::StdMeshers_Adaptive1D(), StdMeshers_Arithmetic1D::StdMeshers_Arithmetic1D(), StdMeshers_AutomaticLength::StdMeshers_AutomaticLength(), StdMeshers_BlockRenumber::StdMeshers_BlockRenumber(), 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_NotConformAllowed::StdMeshers_NotConformAllowed(), StdMeshers_NumberOfLayers::StdMeshers_NumberOfLayers(), StdMeshers_NumberOfLayers2D::StdMeshers_NumberOfLayers2D(), StdMeshers_NumberOfSegments::StdMeshers_NumberOfSegments(), StdMeshers_PolygonPerFace_2D::StdMeshers_PolygonPerFace_2D(), StdMeshers_PolyhedronPerSolid_3D::StdMeshers_PolyhedronPerSolid_3D(), 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_QuadraticMesh::StdMeshers_QuadraticMesh(), StdMeshers_RadialPrism_3D::StdMeshers_RadialPrism_3D(), StdMeshers_RadialQuadrangle_1D2D::StdMeshers_RadialQuadrangle_1D2D(), StdMeshers_Regular_1D::StdMeshers_Regular_1D(), StdMeshers_SegmentAroundVertex_0D::StdMeshers_SegmentAroundVertex_0D(), StdMeshers_SegmentLengthAroundVertex::StdMeshers_SegmentLengthAroundVertex(), StdMeshers_StartEndLength::StdMeshers_StartEndLength(), StdMeshers_UseExisting_1D::StdMeshers_UseExisting_1D(), StdMeshers_UseExisting_2D::StdMeshers_UseExisting_2D(), StdMeshers_ViscousLayerBuilder::StdMeshers_ViscousLayerBuilder(), StdMeshers_ViscousLayers::StdMeshers_ViscousLayers(), and StdMeshers_ViscousLayers2D::StdMeshers_ViscousLayers2D().
|
protectedinherited |
Referenced by SMESH_Hypothesis::GetDim(), SMESH_Hypothesis::SMESH_Hypothesis(), StdMeshers_Adaptive1D::StdMeshers_Adaptive1D(), StdMeshers_Arithmetic1D::StdMeshers_Arithmetic1D(), StdMeshers_AutomaticLength::StdMeshers_AutomaticLength(), StdMeshers_BlockRenumber::StdMeshers_BlockRenumber(), 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_QuadraticMesh::StdMeshers_QuadraticMesh(), StdMeshers_Reversible1D::StdMeshers_Reversible1D(), StdMeshers_SegmentLengthAroundVertex::StdMeshers_SegmentLengthAroundVertex(), StdMeshers_StartEndLength::StdMeshers_StartEndLength(), StdMeshers_ViscousLayers::StdMeshers_ViscousLayers(), and StdMeshers_ViscousLayers2D::StdMeshers_ViscousLayers2D().
|
protectedinherited |
Referenced by SMESH_Hypothesis::GetShapeType(), 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_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(), StdMeshers_Regular_1D::StdMeshers_Regular_1D(), StdMeshers_SegmentAroundVertex_0D::StdMeshers_SegmentAroundVertex_0D(), StdMeshers_UseExisting_1D::StdMeshers_UseExisting_1D(), and StdMeshers_UseExisting_2D::StdMeshers_UseExisting_2D().
|
protectedinherited |