Salome HOME
IPAL13978: Problem of updating SubMeshes on Face and Compound in Object Browser after...
authoreap <eap@opencascade.com>
Fri, 15 May 2015 18:20:14 +0000 (21:20 +0300)
committereap <eap@opencascade.com>
Fri, 15 May 2015 18:20:14 +0000 (21:20 +0300)
   Fix a bug that icons updated starting from the 4th child of mesh object

IPAL13023: To correct alignment for output of "Dump()" functionality.

src/SMESH/SMESH_Mesh.cxx
src/SMESHGUI/SMESHGUI_Utils.cxx
src/SMESH_I/SMESH_Mesh_i.cxx

index 94b1b7a72c22313edf9cb2d51fd369b3afac1de5..4b3444adf88aac5c6ce8302169e94421adc00d10 100644 (file)
@@ -2116,11 +2116,11 @@ ostream& SMESH_Mesh::Dump(ostream& save)
 {
   int clause = 0;
   save << "========================== Dump contents of mesh ==========================" << endl << endl;
-  save << ++clause << ") Total number of nodes:   \t"    << NbNodes() << endl;
-  save << ++clause << ") Total number of edges:   \t"    << NbEdges() << endl;
-  save << ++clause << ") Total number of faces:   \t"    << NbFaces() << endl;
-  save << ++clause << ") Total number of polygons:\t"    << NbPolygons() << endl;
-  save << ++clause << ") Total number of volumes:\t"     << NbVolumes() << endl;
+  save << ++clause << ") Total number of nodes:      \t" << NbNodes() << endl;
+  save << ++clause << ") Total number of edges:      \t" << NbEdges() << endl;
+  save << ++clause << ") Total number of faces:      \t" << NbFaces() << endl;
+  save << ++clause << ") Total number of polygons:   \t" << NbPolygons() << endl;
+  save << ++clause << ") Total number of volumes:    \t" << NbVolumes() << endl;
   save << ++clause << ") Total number of polyhedrons:\t" << NbPolyhedrons() << endl << endl;
   for ( int isQuadratic = 0; isQuadratic < 2; ++isQuadratic )
   {
@@ -2155,10 +2155,10 @@ ostream& SMESH_Mesh::Dump(ostream& save)
       int nb4 = NbTetras(order);
       int nb5 = NbPyramids(order);
       int nb6 = NbPrisms(order);
-      save << clause << ".1) Number of " << orderStr << " hexahedrons:\t" << nb8 << endl;
+      save << clause << ".1) Number of " << orderStr << " hexahedrons: \t" << nb8 << endl;
       save << clause << ".2) Number of " << orderStr << " tetrahedrons:\t" << nb4 << endl;
       save << clause << ".3) Number of " << orderStr << " prisms:      \t" << nb6 << endl;
-      save << clause << ".4) Number of " << orderStr << " pyramids:\t" << nb5 << endl;
+      save << clause << ".4) Number of " << orderStr << " pyramids:    \t" << nb5 << endl;
       if ( nb8 + nb4 + nb5 + nb6 != NbVolumes(order) ) {
         map<int,int> myVolumesMap;
         SMDS_VolumeIteratorPtr itVolumes=_myMeshDS->volumesIterator();
index e49c5e6914cb3f1f017980de51124cb0af3ae75f..72e29e73790ac98683ffde3ec2e18135e1108170 100644 (file)
@@ -300,7 +300,7 @@ namespace SMESH
     _PTR(ChildIterator) anIter = aStudy->NewChildIterator(theSObject);
     for (int i = 1; anIter->More(); anIter->Next(), i++) {
       _PTR(SObject) aSObj = anIter->Value();
-      if (i >= 4) {
+      /*if (i >= 1)*/ {
         _PTR(ChildIterator) anIter1 = aStudy->NewChildIterator(aSObj);
         for ( ; anIter1->More(); anIter1->Next())
         {
@@ -311,6 +311,8 @@ namespace SMESH
 
           std::string entry = aSObj1->GetID();
           int objType = SMESHGUI_Selection::type( entry.c_str(), aStudy );
+          if ( objType == SMESH::HYPOTHESIS || objType == SMESH::ALGORITHM )
+            continue;
 
           SMESH::SMESH_IDSource_var idSrc = SObjectToInterface<SMESH::SMESH_IDSource>( aSObj1 );
           if ( !idSrc->_is_nil() )
index f777d3ae003eddc6bed1274cd5d05ac5c88c6dd5..03420b0e4001a06ed711c1d0a41a34f7a25a9e6f 100644 (file)
@@ -1973,6 +1973,8 @@ void SMESH_Mesh_i::CheckGeomModif()
   GEOM::GEOM_Object_var mainGO = _gen_i->ShapeToGeomObject( _impl->GetShapeToMesh() );
   //if ( mainGO->_is_nil() ) return;
 
+  // Update after group modification
+
   if ( mainGO->_is_nil() || /* shape was removed from GEOM_Client by newGroupShape()
                                called by other mesh (IPAL52735) */
        mainGO->GetType() == GEOM_GROUP ||
@@ -1982,6 +1984,8 @@ void SMESH_Mesh_i::CheckGeomModif()
     return;
   }
 
+  // Update after shape transformation like Translate
+
   GEOM_Client* geomClient = _gen_i->GetShapeReader();
   if ( !geomClient ) return;
   GEOM::GEOM_Gen_var geomGen = _gen_i->GetGeomEngine();