From e851ed0a2182c98a5fca9e60938df7d46ccba1fb Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Mon, 21 Jul 2025 08:24:09 +0200 Subject: [PATCH] EgtMachKernel : - in definizione grezzo da superficie aggiunta verifica che questa sia chiusa. --- MachMgrRawParts.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/MachMgrRawParts.cpp b/MachMgrRawParts.cpp index a015c25..2cc14ac 100644 --- a/MachMgrRawParts.cpp +++ b/MachMgrRawParts.cpp @@ -376,6 +376,10 @@ MachMgr::AddRawPart( int nSurfId, Color cCol) int nRawGroupId = GetCurrRawGroupId() ; if ( nRawGroupId == GDB_ID_NULL) return GDB_ID_NULL ; + // verifico che la superficie sia chiusa + const ISurf* pSurf = GetSurf( m_pGeomDB->GetGeoObj( nSurfId)) ; + if ( pSurf == nullptr || ! pSurf->IsClosed()) + return GDB_ID_NULL ; // recupero l'ingombro della superficie in globale BBox3d b3Surf ; if ( ! m_pGeomDB->GetGlobalBBox( nSurfId, b3Surf)) @@ -407,7 +411,7 @@ MachMgr::AddRawPart( int nSurfId, Color cCol) if ( IsNull( pCrvCompo)) return GDB_ID_NULL ; // recupero la superficie trimesh - ISurfTriMesh* pStm = GetSurfTriMesh( m_pGeomDB->GetGeoObj( nId)) ; + const ISurfTriMesh* pStm = GetSurfTriMesh( m_pGeomDB->GetGeoObj( nId)) ; if ( pStm == nullptr) return GDB_ID_NULL ; // recupero l'ingombro della superficie in locale