From 9bc1f2d55ce0fa191b21436d0e8828e570a16907 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Mon, 17 Jun 2024 07:11:44 +0200 Subject: [PATCH] EgtExecutor : - adattamenti per modifiche a calcolo silhouette con CollisionAvoid. --- EXE_GdbGetSurf.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/EXE_GdbGetSurf.cpp b/EXE_GdbGetSurf.cpp index 3886d93..09697d7 100644 --- a/EXE_GdbGetSurf.cpp +++ b/EXE_GdbGetSurf.cpp @@ -933,7 +933,7 @@ MyGetSurfTmParSilhouettes( const INTVECTOR& vIds, const Point3d& ptOn, const Vec // recupero il riferimento di destinazione Frame3d frDest ; if ( ! pGeomDB->GetGroupGlobFrame( nDestGrpId, frDest)) - return false ; + return GDB_ID_NULL ; // recupero le superfici TriMesh e le porto tutte in locale alla prima SURFLOCALVECTOR vSurfL ; vSurfL.reserve( vIds.size()) ; CISURFTMPVECTOR vpStm ; vpStm.reserve( vIds.size()) ; @@ -952,11 +952,13 @@ MyGetSurfTmParSilhouettes( const INTVECTOR& vIds, const Point3d& ptOn, const Vec // recupero i contorni delle varie silhouette int nFirstId = GDB_ID_NULL ; int nTempCount = 0 ; - CAvParSilhouettesSurfTm cavParSilh( vpStm, frPlanes, dToler) ; + PtrOwner pCavParSilh( CreateCAvParSilhouettesSurfTm()) ; + if ( IsNull( pCavParSilh) || ! pCavParSilh->SetData( vpStm, frPlanes, dToler)) + return GDB_ID_NULL ; for ( auto dDist : vdDist) { // recupero i loop come polilinee POLYLINEVECTOR vPL ; - if ( ! cavParSilh.GetSilhouette( dDist, vPL)) + if ( ! pCavParSilh->GetSilhouette( dDist, vPL)) return GDB_ID_NULL ; // dalle polilinee creo le curve e le inserisco nel DB for ( int i = 0 ; i < int( vPL.size()) ; ++ i) {