From d5fdf37c9c459c143ba7772b5f1817bfe0314497 Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Wed, 25 Jan 2023 09:26:11 +0100 Subject: [PATCH] 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