diff --git a/LuaLibs/ProcessLongCut.lua b/LuaLibs/ProcessLongCut.lua index 5896150..0a4df10 100644 --- a/LuaLibs/ProcessLongCut.lua +++ b/LuaLibs/ProcessLongCut.lua @@ -19,6 +19,7 @@ -- 2023/01/26 Rimossa la pulitura della faccia laterale nel caso in cui la feature abbia almeno una faccia rivolta verso il basso. -- 2023/01/27 In MakeSideFace il prolungamento di uscita è ora fissato a 10 mm. -- 2023/01/27 In caso di lavorazione aggiuntiva con fresa a catena il taglio con lama da sotto viene effettuato a step. +-- 2023/02/15 Migliorato verso di avanzamento della lama. -- Tabella per definizione modulo local ProcessLongCut = {} @@ -940,6 +941,9 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId, bCustUseBlade, nCus -- imposto uso della faccia EgtSetMachiningParam( MCH_MP.FACEUSE, EgtIf( k == 1, nFaceUse, nFaceUse2)) else + EgtSetMachiningParam( MCH_MP.INVERT, false) + EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.LEFT) + dSal, dEal = dEal, dSal -- imposto uso della faccia EgtSetMachiningParam( MCH_MP.FACEUSE, EgtIf( k == 1, nFaceUse, nFaceUse2)) end diff --git a/LuaLibs/ProcessLongDoubleCut.lua b/LuaLibs/ProcessLongDoubleCut.lua index 90adb4b..fddbb06 100644 --- a/LuaLibs/ProcessLongDoubleCut.lua +++ b/LuaLibs/ProcessLongDoubleCut.lua @@ -12,6 +12,7 @@ -- 2022/11/30 Modifiche su SCC per TURN. -- 2023/01/26 Rimossa la pulitura della faccia laterale nel caso in cui la feature abbia almeno una faccia rivolta verso il basso. -- 2023/01/27 In MakeSideFace il prolungamento di uscita è ora fissato a 10 mm. +-- 2023/02/15 Migliorato verso di avanzamento della lama. -- Tabella per definizione modulo local ProcessLong2Cut = {} @@ -713,6 +714,10 @@ function ProcessLong2Cut.Make( Proc, nPhase, nRawId, nPartId, bForcedBladeMaster else if bCanUseBlade and nSide == -1 then EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.LEFT) + else + EgtSetMachiningParam( MCH_MP.INVERT, false) + EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.LEFT) + dSal, dEal = dEal, dSal end -- imposto uso della faccia EgtSetMachiningParam( MCH_MP.FACEUSE, EgtIf( k == 1, nFaceUse, nFaceUse2)) diff --git a/LuaLibs/ProcessScarfJoint.lua b/LuaLibs/ProcessScarfJoint.lua index 71bb9e4..b3c2e23 100644 --- a/LuaLibs/ProcessScarfJoint.lua +++ b/LuaLibs/ProcessScarfJoint.lua @@ -3,6 +3,7 @@ -- 2021/06/28 Aggiunto extra-taglio alle lamate orizzontali. -- 2022/06/10 Aggiunto il parametro dOvmTail per gestire sovramateriali in coda diversi da OVM_MID (sezioni alte e larghe) -- 2022/07/12 Aggiunta gestione PF1250 e TURN. +-- 2023/02/14 Gestite le rotazioni di 90 deg nell'aggiornamento del grezzo. -- Tabella per definizione modulo local ProcessScarfJoint = {} @@ -512,7 +513,7 @@ function ProcessScarfJoint.Make( Proc, nPhase, nRawId, nPartId, dOvmHead, dOvmTa -- aggiornamento ingombro di testa o coda if Proc.Head then local dHCI = 0 - if abs( vtRef:getZ()) > 0.1 then + if abs( vtRef:getZ()) > 0.1 and not BD.ROT90 then local b3Fac1 = EgtSurfTmGetFacetBBoxGlob( Proc.Id, vFaceOrd[1] - 1, GDB_BB.STANDARD) if b3Fac1 then dHCI = b3Raw:getMax():getX() - dOvmHead - b3Fac1:getMin():getX() end dHCI = 0.75 * dHCI @@ -522,7 +523,7 @@ function ProcessScarfJoint.Make( Proc, nPhase, nRawId, nPartId, dOvmHead, dOvmTa BL.UpdateHCING( nRawId, dHCI) elseif Proc.Tail then local dTCI = 0 - if abs( vtRef:getZ()) > 0.1 then + if abs( vtRef:getZ()) > 0.1 and not BD.ROT90 then local b3Fac1 = EgtSurfTmGetFacetBBoxGlob( Proc.Id, vFaceOrd[1] - 1, GDB_BB.STANDARD) if b3Fac1 then dTCI = b3Fac1:getMax():getX() - b3Solid:getMin():getX() end dTCI = 0.75 * dTCI diff --git a/LuaLibs/ProcessSimpleScarf.lua b/LuaLibs/ProcessSimpleScarf.lua index aba4e1c..360d915 100644 --- a/LuaLibs/ProcessSimpleScarf.lua +++ b/LuaLibs/ProcessSimpleScarf.lua @@ -3,6 +3,7 @@ -- 2022/06/10 Aggiunto il parametro dOvmTail per gestire sovramateriali in coda diversi da OVM_MID (sezioni alte e larghe) -- 2022/08/09 Ora se la feature ha meno di due facce viene richiamata la normale Cut. -- 2022/11/09 Aggiunta gestione parametro Q04 per forzare utilizzo fresa di lato e lavorare come FreeContour. +-- 2023/02/14 Gestite le rotazioni di 90 deg nell'aggiornamento del grezzo. -- Tabella per definizione modulo local ProcessSimpleScarf = {} @@ -317,7 +318,7 @@ function ProcessSimpleScarf.Make( Proc, nPhase, nRawId, nPartId, dOvmHead, dOvmT -- aggiornamento ingombro di testa o coda if Proc.Head then local dHCI = 0 - if abs( vtRef:getZ()) > 0.1 then + if abs( vtRef:getZ()) > 0.1 and not BD.ROT90 then local b3Fac1 = EgtSurfTmGetFacetBBoxGlob( Proc.Id, vFaceOrd[1] - 1, GDB_BB.STANDARD) if b3Fac1 then dHCI = b3Raw:getMax():getX() - dOvmHead - b3Fac1:getMin():getX() end else @@ -326,7 +327,7 @@ function ProcessSimpleScarf.Make( Proc, nPhase, nRawId, nPartId, dOvmHead, dOvmT BL.UpdateHCING( nRawId, dHCI) elseif Proc.Tail then local dTCI = 0 - if abs( vtRef:getZ()) > 0.1 then + if abs( vtRef:getZ()) > 0.1 and not BD.ROT90 then local b3Fac1 = EgtSurfTmGetFacetBBoxGlob( Proc.Id, vFaceOrd[1] - 1, GDB_BB.STANDARD) if b3Fac1 then dTCI = b3Fac1:getMax():getX() - b3Solid:getMin():getX() end else diff --git a/LuaLibs/ProcessStepJoint.lua b/LuaLibs/ProcessStepJoint.lua index abf920c..35a75bd 100644 --- a/LuaLibs/ProcessStepJoint.lua +++ b/LuaLibs/ProcessStepJoint.lua @@ -1,6 +1,7 @@ -- ProcessStepJoint.lua by Egaltech s.r.l. 2022/11/03 -- Gestione calcolo giunto a gradino per Travi -- 2022/11/03 Correzione per riconoscimento testa da sotto su fresatura. +-- 2023/02/14 Gestite le rotazioni di 90 deg nell'aggiornamento del grezzo. -- Tabella per definizione modulo local ProcessStepJoint = {} @@ -433,18 +434,22 @@ local function MakeThreeFaces( Proc, nPhase, nRawId, nPartId, dOvmHead) -- Eventuale segnalazione ingombro di testa o coda if Proc.Head then local dOffs = b3Raw:getMax():getX() - dOvmHead - Proc.Box:getMin():getX() - if vtNm:getZ() > 0.5 then - dOffs = 0.5 * dOffs - elseif abs( vtNm:getZ()) > 0.35 then - dOffs = 0.75 * dOffs + if not BD.ROT90 then + if vtNm:getZ() > 0.5 then + dOffs = 0.5 * dOffs + elseif abs( vtNm:getZ()) > 0.35 then + dOffs = 0.75 * dOffs + end end BL.UpdateHCING( nRawId, dOffs) elseif Proc.Tail then local dOffs = Proc.Box:getMax():getX() - b3Solid:getMin():getX() - if vtNm:getZ() > 0.5 then - dOffs = 0.5 * dOffs - elseif abs( vtNm:getZ()) > 0.35 then - dOffs = 0.75 * dOffs + if not BD.ROT90 then + if vtNm:getZ() > 0.5 then + dOffs = 0.5 * dOffs + elseif abs( vtNm:getZ()) > 0.35 then + dOffs = 0.75 * dOffs + end end BL.UpdateTCING( nRawId, dOffs) end