diff --git a/LuaLibs/WMachiningLib.lua b/LuaLibs/WMachiningLib.lua index e2714d4..3701aba 100644 --- a/LuaLibs/WMachiningLib.lua +++ b/LuaLibs/WMachiningLib.lua @@ -8,6 +8,7 @@ -- 2023/10/18 In SetCurrMachiningAndTool sostituito controllo di utensile attivo con controllo utensile nel setup corrente. -- 2023/10/30 In FindPocketing aggiunto parametro per poter escludere le frese che non lavorano di testa. -- 2023/10/31 In IsToolDoubleOk permessa una lunghezza lievemente inferiore dell'utensile secondario rispetto al principale. +-- 2023/10/31 In FindPocketing le lavorazioni con attacco speciale (rampa molto lunga e step basso) ignorano il flag per escludere le frese che non lavorano di testa. -- Tabella per definizione modulo local WMachiningLib = {} @@ -115,12 +116,15 @@ function WMachiningLib.FindPocketing( sType, dMaxDiam, dDepth, nTool_ID, sHead, local nMyTool_ID = EgtTdbGetCurrToolValInNotes( MCH_TP.USERNOTES, 'Tool_ID', 'i') local sMyHead = EgtTdbGetCurrToolParam( MCH_TP.HEAD) local bHasTipFeed = ( EgtTdbGetCurrToolParam( MCH_TP.TIPFEED) ~= 0) + local bIsSpecialLeadIn = ( EgtMdbGetCurrMachiningParam( MCH_MP.LEADINTYPE) == MCH_POCK_LI.ZIGZAG or MCH_POCK_LI.HELIX) and + ( ( EgtMdbGetCurrMachiningParam( MCH_MP.LITANG) or 0) > dTDiam - 10 * GEO.EPS_SMALL) and + ( ( EgtMdbGetCurrMachiningParam( MCH_MP.LIELEV) or 999) <= 2) if nMchType == MCH_MY.POCKETING and ( not dMaxDiam or dTDiam < dMaxDiam + GEO.EPS_SMALL) and ( not dDepth or dTMaxDepth > dDepth - GEO.EPS_SMALL) and ( not nTool_ID or nTool_ID == 0 or nTool_ID == nMyTool_ID) and ( not sHead or sHead == sMyHead) and - ( not bExcludeNoTipFeed or bHasTipFeed) then + ( not bExcludeNoTipFeed or bHasTipFeed or bIsSpecialLeadIn) then return Pocketing.Name, dTDiam, dTMaxDepth end end