mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-14 21:10:33 +05:00
[SALOME platform 0019316]: Need to have a better interface with GHS3D diagnostics
improve work with algos not needeing shapes
This commit is contained in:
parent
6f8dc08854
commit
60d6911d52
@ -497,16 +497,9 @@ const TopoDS_Shape & SMESH_subMesh::GetSubShape() const
|
|||||||
bool SMESH_subMesh::CanAddHypothesis(const SMESH_Hypothesis* theHypothesis) const
|
bool SMESH_subMesh::CanAddHypothesis(const SMESH_Hypothesis* theHypothesis) const
|
||||||
{
|
{
|
||||||
int aHypDim = theHypothesis->GetDim();
|
int aHypDim = theHypothesis->GetDim();
|
||||||
if(_father->HasShapeToMesh()) {
|
int aShapeDim = SMESH_Gen::GetShapeDim(_subShape);
|
||||||
int aShapeDim = SMESH_Gen::GetShapeDim(_subShape);
|
if ( aHypDim <= aShapeDim )
|
||||||
if ( aHypDim <= aShapeDim )
|
return true;
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
//Only 3D hypothesis may be assigned to the mesh w/o geometry
|
|
||||||
return aHypDim == 3;
|
|
||||||
// if ( aHypDim < aShapeDim )
|
|
||||||
// return ( _father->IsMainShape( _subShape ));
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -607,9 +600,8 @@ SMESH_Hypothesis::Hypothesis_Status
|
|||||||
// check if a shape needed by algo is present
|
// check if a shape needed by algo is present
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
algo = static_cast< SMESH_Algo* >( anHyp );
|
algo = static_cast< SMESH_Algo* >( anHyp );
|
||||||
if(_father->GetShapeToMesh() != SMESH_Mesh::PseudoShape())
|
if ( !_father->HasShapeToMesh() && algo->NeedShape() )
|
||||||
if ( !_father->HasShapeToMesh() && algo->NeedShape() )
|
return SMESH_Hypothesis::HYP_NEED_SHAPE;
|
||||||
return SMESH_Hypothesis::HYP_BAD_GEOMETRY;
|
|
||||||
// ----------------------
|
// ----------------------
|
||||||
// check mesh conformity
|
// check mesh conformity
|
||||||
// ----------------------
|
// ----------------------
|
||||||
@ -625,17 +617,6 @@ SMESH_Hypothesis::Hypothesis_Status
|
|||||||
if ( ! CanAddHypothesis( anHyp )) // check dimension
|
if ( ! CanAddHypothesis( anHyp )) // check dimension
|
||||||
return SMESH_Hypothesis::HYP_BAD_DIM;
|
return SMESH_Hypothesis::HYP_BAD_DIM;
|
||||||
|
|
||||||
// EAP: __NOT__ Only NETGEN_3D and GHS3D_3D can be assigned to the Mesh w/o geometryy,
|
|
||||||
// but any algo which !NeedShape()
|
|
||||||
// if(anHyp->GetDim() == 3 && !_father->HasShapeToMesh()
|
|
||||||
// && event == ADD_ALGO) {
|
|
||||||
// //Only NETGEN_3D and GHS3D_3D can be assigned to the Mesh w/o geometryy
|
|
||||||
// bool isNetgen3D = (strcmp( "NETGEN_3D", anHyp->GetName()) == 0);
|
|
||||||
// bool isGhs3d = (strcmp( "GHS3D_3D", anHyp->GetName()) == 0);
|
|
||||||
// if( !isNetgen3D && !isGhs3d)
|
|
||||||
// return SMESH_Hypothesis::HYP_BAD_DIM;
|
|
||||||
// }
|
|
||||||
|
|
||||||
if ( /*!anHyp->IsAuxiliary() &&*/ GetSimilarAttached( _subShape, anHyp ) )
|
if ( /*!anHyp->IsAuxiliary() &&*/ GetSimilarAttached( _subShape, anHyp ) )
|
||||||
return SMESH_Hypothesis::HYP_ALREADY_EXIST;
|
return SMESH_Hypothesis::HYP_ALREADY_EXIST;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user