From d5fdf37c9c459c143ba7772b5f1817bfe0314497 Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Wed, 25 Jan 2023 09:26:11 +0100 Subject: [PATCH 1/4] BugFix: - in LapJoint -> MakeByPocket gestito caso in cui poteva essere applicata una lavorazione con percorso vuoto --- LuaLibs/ProcessLapJoint.lua | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index 136929b..4bb15aa 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -60,6 +60,7 @@ -- 2022/12/16 Implementato parametro Q_SIDE_ROUGH_TOOL anche per L20 -- 2022/12/21 Sistemata gestione SideMillAsSaw. -- 2022/01/19 In MakeMoreFaces -> MakeBySideMill aggiunto controllo che lo step finale non superi lo spessore utensile. +-- 2022/01/24 In MakeByPocket gestito caso il caso in cui veniva applicata una fresatura con percorso vuoto. Ora viene rimossa e la tasca viene fatta con lama. -- Tabella per definizione modulo local ProcessLapJoint = {} @@ -3683,13 +3684,17 @@ local function MakeByPockets( Proc, nPhase, nRawId, nPartId, nChamfer, dDepthCha sNotes = sNotes .. 'VMRS=0;' EgtSetMachiningParam( MCH_MP.USERNOTES, sNotes) -- eseguo - if not ML.ApplyMachining( true, false) then + if not ML.ApplyMachining( true, false) or EgtIsMachiningEmpty() then -- provo ad allargare leggermente la tasca EgtSetMachiningParam( MCH_MP.OFFSR, -0.1) if not ML.ApplyMachining( true, false) then local _, sErr = EgtGetLastMachMgrError() EgtSetOperationMode( nMchFId, false) return -1, sErr + elseif EgtIsMachiningEmpty() then + EgtRemoveOperation( nMchFId) + local sErr = 'Impossible to machine (empty toolpath)' + return -3, sErr end end -- se posso applicare la svuotatura sul lato opposto @@ -5238,7 +5243,9 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa end nOk, sErr, dDimMin, dDimMax, dDepth, vtOrtho, nLundIdFace, dDiamTool, bDoubleSide, nPathInt, nSurfInt, bOneShot, bMillDown, nFirstMachId, bOrthoFaces = MakeByPockets( Proc, nPhase, nRawId, nPartId, nChamfer, dDepthCham, nAddGrpId, sMyMchFind, bIs3Faces, b3Solid, bOrthoFacesMaster, bMillDown, bSetOpenBorders, bIsU, bIsL) - if nOk == -2 then + if nOk == -3 then + bTryWithBlades = true + elseif nOk == -2 then if not sMchFind then sMchFind = sMchFindBackUp end From 89b968f0d13792ae6fedcf44fc137c4d378e4dcd Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Wed, 25 Jan 2023 14:43:35 +0100 Subject: [PATCH 2/4] Fix: - in LapJoint piccola modifica al diametro massimo dell'utensile per tasche 3 facce a L --- LuaLibs/ProcessLapJoint.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index 4bb15aa..e5f013f 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -4942,7 +4942,7 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa end elseif Proc.Fct == 3 and bIsL then -- per rifinire gli angoli premio utensile diam 25 o da BD - dDiam = min( ( 2 * dDiam) - 1, BD.MAXDIAM_POCK_CORNER) + dDiam = min( ( 2 * dDiam) + 0.1, BD.MAXDIAM_POCK_CORNER) else dDiam = 2 * dDiam end From aa8fd354d9cb3ae5636eddba7f2e1a0e9f9a6026 Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Thu, 26 Jan 2023 09:35:40 +0100 Subject: [PATCH 3/4] Improvement: - in ProcessCut migliorata in alcuni casi la direzione di lavoro della lama, per scaricare il truciolo nella direzione ottimale - in ProcessLapJoint leggera correzione al diametro massimo utensile per tasche 3 facce a L --- LuaLibs/ProcessCut.lua | 4 +++- LuaLibs/ProcessLapJoint.lua | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/LuaLibs/ProcessCut.lua b/LuaLibs/ProcessCut.lua index 1684f3a..fd7c70c 100644 --- a/LuaLibs/ProcessCut.lua +++ b/LuaLibs/ProcessCut.lua @@ -522,8 +522,10 @@ local function MakeFromTop( sCutting, Proc, nPhase, nRawId, nPartId, dOvmHead, b vtOrthoO = -X_AX() end else - if vtN:getZ() < dVzLimDwnUp or Proc.Head or Proc.Tail then + if vtN:getZ() < dVzLimDwnUp or Proc.Tail or ( Proc.Head and abs( vtN:getY()) > 0.01) then vtOrthoO = EgtIf( vtN:getY() > -0.02, -Y_AX(), Y_AX()) + elseif Proc.Head then + vtOrthoO = EgtIf( vtN:getY() > -0.02, Y_AX(), -Y_AX()) else vtOrthoO = EgtIf( vtN:getY() > 0.02, Y_AX(), -Y_AX()) end diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index e5f013f..0d9ba6d 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -4942,7 +4942,7 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa end elseif Proc.Fct == 3 and bIsL then -- per rifinire gli angoli premio utensile diam 25 o da BD - dDiam = min( ( 2 * dDiam) + 0.1, BD.MAXDIAM_POCK_CORNER) + dDiam = min( ( 2 * dDiam) + 10 * GEO.EPS_SMALL, BD.MAXDIAM_POCK_CORNER) else dDiam = 2 * dDiam end From 1a2675ed5660a538ebcbdc021ef5cfeffb3196cd Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Thu, 26 Jan 2023 09:38:42 +0100 Subject: [PATCH 4/4] fix commenti --- LuaLibs/ProcessCut.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/LuaLibs/ProcessCut.lua b/LuaLibs/ProcessCut.lua index fd7c70c..dc9f555 100644 --- a/LuaLibs/ProcessCut.lua +++ b/LuaLibs/ProcessCut.lua @@ -17,6 +17,7 @@ -- 2022/08/25 In caso di AdvTail con taglio lungo Y la profondità di lavorazione è opportunamente diminuita. -- 2022/08/30 Modificata la condizione che determina l'utilizzo della testa da sotto. Ora controlla se la trave è più grande del doppio della massima larghezza del cubetto. -- 2022/09/23 Corretta la condizione per cui è richiesto l'aggiornamento del grezzo. +-- 2022/01/26 Migliorata la direzione di lavoro della lama in alcuni casi in cui il truciolo veniva scaricato dal lato errato. -- Tabella per definizione modulo local ProcessCut = {}