Salome HOME
[box #38049][EDF] (2023-T3) Usages in SMESH
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_ComputeDlg.cxx
index d9808febd34d77ef085b5598122dbeb7731a3953..039a7cde27c92491bf39e3a770b24878b90dad0f 100644 (file)
@@ -896,6 +896,56 @@ void SMESHGUI_ComputeDlg_QThreadQDialog::closeEvent(QCloseEvent *event)
   event->accept();
 }
 
+//================================================================================
+void SMESHGUI_BaseComputeOp::logMeshSize()
+{
+  if(myMesh->_is_nil())
+  {
+    return;
+  }
+
+  SMESH::smIdType_array_var aRes = myMesh->GetMeshInfo();
+  QString aMessage = QString("%1").arg( aRes[SMDSAbs_EntityType::SMDSEntity_Node]) + " nodes";
+  CAM_Application::logStructuredUserEvent("Mesh",
+                                          "Result size",
+                                          "",
+                                          "",
+                                          aMessage);
+  
+  int nbEdges = aRes[SMDSAbs_EntityType::SMDSEntity_Edge] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Edge];
+  aMessage = QString("%1").arg(nbEdges) + " edges";
+  CAM_Application::logStructuredUserEvent("Mesh",
+                                          "Result size",
+                                          "",
+                                          "",
+                                          aMessage);
+  
+  int nbFaces = aRes[SMDSAbs_EntityType::SMDSEntity_Triangle] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Triangle] +
+                aRes[SMDSAbs_EntityType::SMDSEntity_BiQuad_Triangle] + aRes[SMDSAbs_EntityType::SMDSEntity_Quadrangle] +
+                aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Quadrangle] + aRes[SMDSAbs_EntityType::SMDSEntity_BiQuad_Quadrangle] +
+                aRes[SMDSAbs_EntityType::SMDSEntity_Polygon] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Polygon];
+  aMessage = QString("%1").arg(nbFaces) + " faces";
+  CAM_Application::logStructuredUserEvent("Mesh",
+                                          "Result size",
+                                          "",
+                                          "",
+                                          aMessage);
+  
+  int nbVolumes = aRes[SMDSAbs_EntityType::SMDSEntity_Tetra] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Tetra] +
+                  aRes[SMDSAbs_EntityType::SMDSEntity_Pyramid] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Pyramid] +
+                  aRes[SMDSAbs_EntityType::SMDSEntity_Hexa] + aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Hexa] +
+                  aRes[SMDSAbs_EntityType::SMDSEntity_TriQuad_Hexa] + aRes[SMDSAbs_EntityType::SMDSEntity_Penta] +
+                  aRes[SMDSAbs_EntityType::SMDSEntity_Quad_Penta] + aRes[SMDSAbs_EntityType::SMDSEntity_BiQuad_Penta] +
+                  aRes[SMDSAbs_EntityType::SMDSEntity_Hexagonal_Prism] + aRes[SMDSAbs_EntityType::SMDSEntity_Polyhedra];
+  aMessage = QString("%1").arg(nbVolumes) + " volumes";
+  CAM_Application::logStructuredUserEvent("Mesh",
+                                          "Result size",
+                                          "",
+                                          "",
+                                          aMessage);
+
+}
+
 //================================================================================
 /*!
  * \brief computeMesh()
@@ -1122,9 +1172,13 @@ void SMESHGUI_BaseComputeOp::computeMesh()
     isShowResultDlg = true;
   }
 
+  //log Mesh size info
+  logMeshSize();
+
   // SHOW RESULTS
   if ( isShowResultDlg )
     showComputeResult( memoryLack, noCompError,aCompErrors, noHypoError, aHypErrors );
+
 }
 
 void SMESHGUI_BaseComputeOp::showComputeResult( const bool theMemoryLack,