From 59b7b9d44e190df0f842e458e452e7b8d33d6fe6 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Sat, 20 Jun 2020 11:15:38 +0000 Subject: [PATCH] DataBeam : - in taglio lama per tenoni da sotto solo se non eccede MaxMat in altezza - migliorato controllo DtMortise in coda - in lavorazione BlckHausHalfLap si favorisce fresa BH di fianco se possibile. --- LuaLibs/ProcessCut.lua | 4 ++-- LuaLibs/ProcessDtMortise.lua | 16 ++++++++++++---- LuaLibs/ProcessLapJoint.lua | 8 ++++---- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/LuaLibs/ProcessCut.lua b/LuaLibs/ProcessCut.lua index c80e15f..60ce5e5 100644 --- a/LuaLibs/ProcessCut.lua +++ b/LuaLibs/ProcessCut.lua @@ -1,4 +1,4 @@ --- ProcessCut.lua by Egaltech s.r.l. 2020/06/11 +-- ProcessCut.lua by Egaltech s.r.l. 2020/06/20 -- Gestione calcolo singoli tagli di lama per Travi -- Tabella per definizione modulo @@ -310,7 +310,7 @@ function ProcessCut.Make( Proc, nPhase, nRawId, nPartId, dOvmHead, bFromBottom) else -- lavoro la faccia local vtOrthoO - if bFromBottom and vtN:getZ() > 0 then + if bFromBottom and dCutV < dMaxDepth - BD.CUT_EXTRA and vtN:getZ() > 0 then vtOrthoO = -Z_AX() elseif bHorizCut then vtOrthoO = Z_AX() diff --git a/LuaLibs/ProcessDtMortise.lua b/LuaLibs/ProcessDtMortise.lua index f8a2c6b..0ac97ee 100644 --- a/LuaLibs/ProcessDtMortise.lua +++ b/LuaLibs/ProcessDtMortise.lua @@ -1,4 +1,4 @@ --- ProcessDtMortise.lua by Egaltech s.r.l. 2020/05/25 +-- ProcessDtMortise.lua by Egaltech s.r.l. 2020/06/20 -- Gestione calcolo mortase a coda di rondice per Travi -- Tabella per definizione modulo @@ -28,11 +28,19 @@ end --------------------------------------------------------------------- -- Verifica se feature di coda function ProcessDtMortise.IsTailFeature( Proc, b3Raw) - -- verifico se è in coda + -- la mortasa di fronte è già stata classificata nel chiamante + -- controllo la mortasa standard if Proc.Box:getMin():getX() > b3Raw:getMin():getX() + BD.MAX_DIST_HTFEA then - return false + -- recupero la curva di profilo + local AuxId = EgtGetInfo( Proc.Id, 'AUXID', 'i') + if not AuxId then return false end + AuxId = AuxId + Proc.Id + local vtStart = EgtSV( AuxId, GDB_ID.ROOT) + local vtEnd = EgtEV( AuxId, GDB_ID.ROOT) + local vtDir = -vtStart + vtEnd ; vtDir:normalize() + return ( vtDir:getX() < -0.5) end - return true + return false end --------------------------------------------------------------------- diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index 2a39dc1..45d4e0b 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -1,4 +1,4 @@ --- ProcessLapJoint.lua by Egaltech s.r.l. 2020/06/18 +-- ProcessLapJoint.lua by Egaltech s.r.l. 2020/06/19 -- Gestione calcolo mezzo-legno per Travi -- 2019/10/08 Agg. gestione OpenPocket. @@ -223,9 +223,9 @@ local function VerifyIfByBHSideMill( Proc) local bHead = true local sMilling local dMaxMat = 10 - -- se non abilitato parametro Q per lavorarlo di fianco esco - local nUseSideTol = EgtGetInfo( Proc.Id, sMakeBySideRoughTool, 'i') or 0 - if nUseSideTol == 0 then + -- se non feature BlockHausHalfLap e non abilitato parametro Q per lavorarlo di fianco esco + local nUseSideTool = EgtGetInfo( Proc.Id, sMakeBySideRoughTool, 'i') or 0 + if Proc.Prc ~= 37 and nUseSideTool == 0 then return false end -- verifico se U