mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-12 00:29:17 +05:00
IPAL16934: Selection works incorrectly if Source and Target Vertices in Projection 1D are the same vertex.
1) BUG: impossible to use shared vertices for vertex association in Projection Source hyps 2) Regression: Order of Sub-meshes dialog dialog does not appear when a sub-mesh is created
This commit is contained in:
parent
b9986eb294
commit
b73d2603ed
@ -92,14 +92,14 @@
|
||||
#include "SMESHGUI_Utils.h"
|
||||
#include "SMESHGUI_VTKUtils.h"
|
||||
|
||||
#include <SMESH_version.h>
|
||||
#include "SMESH_version.h"
|
||||
|
||||
#include "SMESH_ControlsDef.hxx"
|
||||
#include <SMESH_Actor.h>
|
||||
#include <SMESH_ActorUtils.h>
|
||||
#include <SMESH_Client.hxx>
|
||||
#include <SMESH_ScalarBarActor.h>
|
||||
#include <SMESH_TypeFilter.hxx>
|
||||
#include "SMESH_Actor.h"
|
||||
#include "SMESH_ActorUtils.h"
|
||||
#include "SMESH_Client.hxx"
|
||||
#include "SMESH_ScalarBarActor.h"
|
||||
#include "SMESH_TypeFilter.hxx"
|
||||
|
||||
// SALOME GUI includes
|
||||
#include <SalomeApp_Application.h>
|
||||
|
@ -26,15 +26,15 @@
|
||||
#include "SMESHGUI_MeshOp.h"
|
||||
|
||||
#include "SMESHGUI.h"
|
||||
#include "SMESHGUI_MeshDlg.h"
|
||||
#include "SMESHGUI_ShapeByMeshDlg.h"
|
||||
#include "SMESHGUI_HypothesesUtils.h"
|
||||
#include "SMESHGUI_Hypotheses.h"
|
||||
#include "SMESHGUI_Utils.h"
|
||||
#include "SMESHGUI_GEOMGenUtils.h"
|
||||
|
||||
#include <SMESH_TypeFilter.hxx>
|
||||
#include <SMESH_NumberFilter.hxx>
|
||||
#include "SMESHGUI_Hypotheses.h"
|
||||
#include "SMESHGUI_HypothesesUtils.h"
|
||||
#include "SMESHGUI_MeshDlg.h"
|
||||
#include "SMESHGUI_Operations.h"
|
||||
#include "SMESHGUI_ShapeByMeshDlg.h"
|
||||
#include "SMESHGUI_Utils.h"
|
||||
#include "SMESH_NumberFilter.hxx"
|
||||
#include "SMESH_TypeFilter.hxx"
|
||||
|
||||
// SALOME GEOM includes
|
||||
#include <GEOM_SelectionFilter.h>
|
||||
@ -2408,7 +2408,7 @@ bool SMESHGUI_MeshOp::checkSubMeshConcurrency(SMESH::SMESH_Mesh_ptr mesh,
|
||||
myDlg->setEnabled( false ); // disactivate selection
|
||||
selectionMgr()->clearFilters();
|
||||
selectObject( meshSO );
|
||||
SMESHGUI::GetSMESHGUI()->OnGUIEvent( 713 ); // MESH_ORDER
|
||||
SMESHGUI::GetSMESHGUI()->OnGUIEvent( SMESHOp::OpMeshOrder ); // MESH_ORDER
|
||||
qApp->processEvents();
|
||||
|
||||
myDlg->setEnabled( true );
|
||||
|
@ -1321,6 +1321,16 @@ bool StdMeshers_Prism_3D::compute(const Prism_3D::TPrismTopo& thePrism)
|
||||
myBotToColumnMap.clear();
|
||||
myBlock.Clear();
|
||||
|
||||
// update state of sub-meshes (mostly in order to erase improper errors)
|
||||
SMESH_subMesh* sm = myHelper->GetMesh()->GetSubMesh( thePrism.myShape3D );
|
||||
SMESH_subMeshIteratorPtr smIt = sm->getDependsOnIterator(/*includeSelf=*/false);
|
||||
while ( smIt->more() )
|
||||
{
|
||||
sm = smIt->next();
|
||||
sm->GetComputeError().reset();
|
||||
sm->ComputeStateEngine( SMESH_subMesh::CHECK_COMPUTE_STATE );
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -550,7 +550,7 @@ bool StdMeshers_ProjectionUtils::FindSubShapeAssociation(const TopoDS_Shape& the
|
||||
// ----------------------------------------------------------------------
|
||||
case TopAbs_EDGE: { // TopAbs_EDGE
|
||||
// ----------------------------------------------------------------------
|
||||
if ( theMap.Extent() != 2 )
|
||||
if ( theMap.Extent() != 1 )
|
||||
RETURN_BAD_RESULT("Wrong map extent " << theMap.Extent() );
|
||||
TopoDS_Edge edge1 = TopoDS::Edge( theShape1 );
|
||||
TopoDS_Edge edge2 = TopoDS::Edge( theShape2 );
|
||||
|
@ -408,7 +408,7 @@ bool StdMeshersGUI_StdHypothesisCreator::checkParams( QString& msg ) const
|
||||
srcV = w1->GetValue();
|
||||
tgtV = w2->GetValue();
|
||||
ok = (( srcV.isEmpty() && tgtV.isEmpty() ) ||
|
||||
( !srcV.isEmpty() && !tgtV.isEmpty() && srcV != tgtV ));
|
||||
( !srcV.isEmpty() && !tgtV.isEmpty() /*&& srcV != tgtV*/ ));
|
||||
if ( !ok ) {
|
||||
w1->SetObject( CORBA::Object::_nil() );
|
||||
w2->SetObject( CORBA::Object::_nil() );
|
||||
|
Loading…
Reference in New Issue
Block a user