From c97cc00cdc7d714f92f27e8991ad922d11f58626 Mon Sep 17 00:00:00 2001 From: DarioS Date: Thu, 9 Feb 2023 10:39:27 +0100 Subject: [PATCH] EgtMachKernel 2.5b1 : - modifiche per gestione gambo utensile in calcolo MaxDepth e in disegno dello stesso. --- EgtMachKernel.rc | Bin 11774 -> 11774 bytes MachMgrDBTools.cpp | 3 +++ ToolsMgr.cpp | 12 ++++++++---- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index 7c43de356fb1662bfea9cf4407a0b0716818f5ed..a8bea5240b8b351e03065de86cf096b23d6001d2 100644 GIT binary patch delta 121 zcmewt{V#gMH#Sxy1|0^&&A-{KnVFLq3@1O7)ZLuM)x!c8zsNNCgkT;*P6$a3MUMyL R=2g-z%(yjz6ex#q0RU$`CV&6{ delta 121 zcmewt{V#gMH#Sy71|0^I&A-{KnVAzAOeQ~+)ZLuM)x!c8zsNNCgkT;*P6$a3MUMyL R=2g-z%(yjz6ex#q0RU?$CXfIC diff --git a/MachMgrDBTools.cpp b/MachMgrDBTools.cpp index 9d6006c..abd0d94 100644 --- a/MachMgrDBTools.cpp +++ b/MachMgrDBTools.cpp @@ -631,6 +631,8 @@ MachMgr::UpdateStandardToolDraw( const ToolData* pTdata, int nGenCtx, int nToolC pTdata->GetParam( TPA_TOTDIAM, dTotDiam) ; double dDist = 0 ; pTdata->GetParam( TPA_DIST, dDist) ; + double dStemDiam = 0 ; + pTdata->GetParam( TPA_STEMDIAM, dStemDiam) ; double dMaxMat = 0 ; pTdata->GetParam( TPA_MAXMAT, dMaxMat) ; double dCornRad = 0 ; @@ -694,6 +696,7 @@ MachMgr::UpdateStandardToolDraw( const ToolData* pTdata, int nGenCtx, int nToolC bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.LEN", dLen) ; bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.TOTDIAM", dTotDiam) ; bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.DIAM", dDiam) ; + bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.STEMDIAM", dStemDiam) ; bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.MAXMAT", dMaxMat) ; bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.HEIGHT", dThick) ; bOk = bOk && ExeLuaSetGlobNumVar( "TOOL.SIDEANG", dSideAng) ; diff --git a/ToolsMgr.cpp b/ToolsMgr.cpp index 7cd8c6c..006f749 100644 --- a/ToolsMgr.cpp +++ b/ToolsMgr.cpp @@ -694,12 +694,16 @@ ToolsMgr::GetCurrToolMaxDepth( double dSafe, double& dMaxDepth) const GetValInNotes( m_tdCurrTool.m_sSysNotes, TSI_THLEN, dTHoldLen) ; GetValInNotes( m_tdCurrTool.m_sSysNotes, TSI_THDIAM, dTHoldDiam) ; } - // calcolo il massimo affondamento + // calcolo il massimo affondamento per le limitazioni dal portautensili dMaxDepth = m_tdCurrTool.m_dLen - dSafe ; - if ( m_tdCurrTool.m_dDiam > dTHoldDiam) - dMaxDepth -= dTHoldBase ; - else + if ( dTHoldDiam > m_tdCurrTool.m_dDiam + EPS_SMALL) dMaxDepth -= dTHoldLen ; + else + dMaxDepth -= dTHoldBase ; + // recupero l'eventuale diametro gambo utensile (definito se non nullo) + double dStemDiam ; m_tdCurrTool.GetParam( TPA_STEMDIAM, dStemDiam) ; + if ( dStemDiam > m_tdCurrTool.m_dDiam + EPS_SMALL) + dMaxDepth = min( dMaxDepth, m_tdCurrTool.m_dMaxMat) ; return true ; } // se mortasatrice o sega a catena