diff --git a/ToolsMgr.cpp b/ToolsMgr.cpp index c65f1fb..e2a7261 100644 --- a/ToolsMgr.cpp +++ b/ToolsMgr.cpp @@ -688,8 +688,12 @@ 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 - dMaxDepth = m_tdCurrTool.m_dLen - ( m_tdCurrTool.m_dDiam > dTHoldDiam ? 0 : dTHoldLen) - dSafe ; + // calcolo il massimo affondamento (lunghezza TH negativa significa che TH è parte della testa) + dMaxDepth = m_tdCurrTool.m_dLen - dSafe ; + if ( m_tdCurrTool.m_dDiam > dTHoldDiam) + dMaxDepth -= min( 0., dTHoldLen) ; + else + dMaxDepth -= max( 0., dTHoldLen) ; return true ; } // se mortasatrice o sega a catena