-// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
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()
}
}
catch (...) {
-#ifdef _DEBUG_
+
MESSAGE ( "Exception thrown during mesh visualization" );
-#endif
+
if ( SMDS_Mesh::CheckMemory(true) ) { // has memory to show warning?
SMESH::OnVisuException();
}
isShowResultDlg = true;
}
+ //log Mesh size info
+ logMeshSize();
+
// SHOW RESULTS
if ( isShowResultDlg )
showComputeResult( memoryLack, noCompError,aCompErrors, noHypoError, aHypErrors );
+
}
void SMESHGUI_BaseComputeOp::showComputeResult( const bool theMemoryLack,
}
else if ( theNoCompError && theNoHypoError )
{
- SMESH::long_array_var aRes = myMesh->GetMeshInfo();
+ SMESH::smIdType_array_var aRes = myMesh->GetMeshInfo();
aCompDlg->myFullInfo->SetMeshInfo( aRes );
aCompDlg->myFullInfo->show();
aCompDlg->myBriefInfo->hide();
theCompErrors[ i ].code == SMESH::COMPERR_NO_MESH_ON_SHAPE );
// full or brief mesh info
- SMESH::long_array_var aRes = myMesh->GetMeshInfo();
+ SMESH::smIdType_array_var aRes = myMesh->GetMeshInfo();
if ( onlyWarnings ) {
aCompDlg->myFullInfo->SetMeshInfo( aRes );
aCompDlg->myFullInfo->show();
QString aHypErrors;
bool evaluateFailed = true, memoryLack = false;
- SMESH::long_array_var aRes;
+ SMESH::smIdType_array_var aRes;
_PTR(SObject) aMeshSObj = SMESH::FindSObject(myMesh);
if ( !aMeshSObj ) // IPAL21340
}
-void SMESHGUI_BaseComputeOp::showEvaluateResult(const SMESH::long_array& theRes,
+void SMESHGUI_BaseComputeOp::showEvaluateResult(const SMESH::smIdType_array& theRes,
const bool theMemoryLack,
const bool theNoCompError,
SMESH::compute_error_array_var& theCompErrors,