mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-12-26 09:20:34 +05:00
52451: "Assign a set of hypotheses" is disabled by mistake
This commit is contained in:
parent
80fe1ddefc
commit
b5a71c53ed
@ -1396,7 +1396,6 @@ void SMESHGUI_MeshOp::onAlgoSelected( const int theIndex,
|
|||||||
|
|
||||||
const bool isSubmesh = ( myToCreate ? !myIsMesh : myDlg->isObjectShown( SMESHGUI_MeshDlg::Mesh ));
|
const bool isSubmesh = ( myToCreate ? !myIsMesh : myDlg->isObjectShown( SMESHGUI_MeshDlg::Mesh ));
|
||||||
|
|
||||||
// if ( aDim >= SMESH::DIM_2D ) myAvailableHypData[ aDim ][ Algo ] = myFilteredAlgoData[aDim];
|
|
||||||
HypothesisData* algoData = hypData( aDim, Algo, theIndex );
|
HypothesisData* algoData = hypData( aDim, Algo, theIndex );
|
||||||
HypothesisData* algoByDim[4];
|
HypothesisData* algoByDim[4];
|
||||||
algoByDim[ aDim ] = algoData;
|
algoByDim[ aDim ] = algoData;
|
||||||
@ -2568,7 +2567,7 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
|
|||||||
|
|
||||||
if ( anCompareType == "ANY" )
|
if ( anCompareType == "ANY" )
|
||||||
{
|
{
|
||||||
for ( int dim = SMESH::DIM_2D; dim <= SMESH::DIM_3D; dim++ )
|
for ( int dim = SMESH::DIM_3D; dim >= SMESH::DIM_2D; dim-- )
|
||||||
{
|
{
|
||||||
isNone = currentHyp( dim, Algo ) < 0;
|
isNone = currentHyp( dim, Algo ) < 0;
|
||||||
isAvailableChoiceAlgo = false;
|
isAvailableChoiceAlgo = false;
|
||||||
@ -2581,6 +2580,10 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
|
|||||||
}
|
}
|
||||||
myAvailableHypData[dim][Algo].clear();
|
myAvailableHypData[dim][Algo].clear();
|
||||||
anAvailableAlgs.clear();
|
anAvailableAlgs.clear();
|
||||||
|
if ( dim != SMESH::DIM_2D || currentHyp( SMESH::DIM_3D, Algo ) < 0 ||
|
||||||
|
myAvailableHypData[SMESH::DIM_3D][Algo].empty() ||
|
||||||
|
!myAvailableHypData[SMESH::DIM_3D][Algo].at( currentHyp( SMESH::DIM_3D, Algo ) )->InputTypes.isEmpty() )
|
||||||
|
{
|
||||||
for (int i = 0 ; i < anAvailableAlgsData.count(); i++)
|
for (int i = 0 ; i < anAvailableAlgsData.count(); i++)
|
||||||
{
|
{
|
||||||
HypothesisData* curAlgo = anAvailableAlgsData.at(i);
|
HypothesisData* curAlgo = anAvailableAlgsData.at(i);
|
||||||
@ -2606,6 +2609,7 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
|
|||||||
isAvailableChoiceAlgo = true;
|
isAvailableChoiceAlgo = true;
|
||||||
anCurrentAvailableAlgo = currentHyp( dim, Algo );
|
anCurrentAvailableAlgo = currentHyp( dim, Algo );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
myDlg->tab( dim )->setAvailableHyps( Algo, anAvailableAlgs );
|
myDlg->tab( dim )->setAvailableHyps( Algo, anAvailableAlgs );
|
||||||
if ( isAvailableChoiceAlgo )
|
if ( isAvailableChoiceAlgo )
|
||||||
setCurrentHyp( dim, Algo, anCurrentAvailableAlgo );
|
setCurrentHyp( dim, Algo, anCurrentAvailableAlgo );
|
||||||
@ -2730,6 +2734,18 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
|
|||||||
{
|
{
|
||||||
for (int i = SMESH::DIM_0D; i <= myMaxShapeDim; i++)
|
for (int i = SMESH::DIM_0D; i <= myMaxShapeDim; i++)
|
||||||
{
|
{
|
||||||
|
if ( myAvailableHypData[i][Algo].count() == 0 ) {
|
||||||
|
availableHyps( i, Algo, anAvailableAlgs, anAvailableAlgsData );
|
||||||
|
for ( int i = 0 ; i < anAvailableAlgsData.count(); i++ )
|
||||||
|
{
|
||||||
|
HypothesisData* aCurAlgo = anAvailableAlgsData.at( i );
|
||||||
|
if ( aCurAlgo->Label == algoDataIn->Label ){
|
||||||
|
isAvailable = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
for (int j = 0; j < myAvailableHypData[i][Algo].count(); ++j) {
|
for (int j = 0; j < myAvailableHypData[i][Algo].count(); ++j) {
|
||||||
HypothesisData* aCurAlgo = hypData( i, Algo, j );
|
HypothesisData* aCurAlgo = hypData( i, Algo, j );
|
||||||
if ( aCurAlgo->Label == algoDataIn->Label ){
|
if ( aCurAlgo->Label == algoDataIn->Label ){
|
||||||
@ -2737,6 +2753,7 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if ( isAvailable ) break;
|
if ( isAvailable ) break;
|
||||||
}
|
}
|
||||||
if ( !isAvailable ) break;
|
if ( !isAvailable ) break;
|
||||||
|
Loading…
Reference in New Issue
Block a user