diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7fe43e7..28b8102 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,7 +2,7 @@ variables: VERS_MAIN: '1.0' APP_NAME: 'Beam' NEW_REL: '' - NET_SHARE_R: '\\10.74.82.201\EgwTech' + NET_SHARE_X: '\\10.74.82.201\EgwTech' NET_SHARE_Z: '\\10.74.82.201\Artifacts' NET_USERQ: 'steamw\egalware' @@ -37,21 +37,23 @@ variables: # helper copia SORGENTI verso cartella di rete R:\ dei SORGENTI .CodeReplicaR: &CodeReplicaR - | - net use R: /delete - net use R: $env:NET_SHARE_R /u:$env:NET_USERQ $ZDRIVE_PASSWD - ROBOCOPY . R:\EgtData\$env:APP_NAME /MIR /XF .git* /XD .git + net use X: /delete SLEEP 2 - net use R: /delete + net use X: $env:NET_SHARE_X /u:$env:NET_USERQ $ZDRIVE_PASSWD + ROBOCOPY . X:\EgtData\$env:APP_NAME /MIR /XF .git* /XD .git + SLEEP 2 + net use X: /delete # helper copia script verso cartella di rete R:\ delle cartelle bin .ReplicaR: &ReplicaR - | - net use R: /delete - net use R: $env:NET_SHARE_R /u:$env:NET_USERQ $ZDRIVE_PASSWD - ROBOCOPY /MIR bin R:\EgtData\$env:APP_NAME\bin - ROBOCOPY /MIR Images R:\EgtData\$env:APP_NAME\bin\Images + net use X: /delete SLEEP 2 - net use R: /delete + net use X: $env:NET_SHARE_X /u:$env:NET_USERQ $ZDRIVE_PASSWD + ROBOCOPY /MIR bin X:\EgtData\$env:APP_NAME\bin + ROBOCOPY /MIR Images X:\EgtData\$env:APP_NAME\bin\Images + SLEEP 2 + net use X: /delete # helper copia script verso cartella di rete R:\ delle cartelle bin .ReplicaZ: &ReplicaZ diff --git a/LuaLibs/ProcessLongCut.lua b/LuaLibs/ProcessLongCut.lua index ac5f5b0..cdf1436 100644 --- a/LuaLibs/ProcessLongCut.lua +++ b/LuaLibs/ProcessLongCut.lua @@ -13,7 +13,7 @@ -- 2022/07/14 Aggiunta limitazione lavorazione a sinistra anche se il grezzo successivo non ha lavorazioni (finale barra) ma è abbastanza lungo da poter essere riutilizzato (BD.MinRaw). -- 2022/09/23 Modificato l'angolo per l'abilitazione della lama da sotto: ora interviene anche per facce verticali. -- 2022/11/04 Aggiunto passaggio parametro bDownHead (Testa da Sotto) nelle chiamate a MakeSideFace. --- 2022/11/28 Correzioni varie per attacco, pulizia spigoli, utilizzo H3 +-- 2022/11/28 Correzioni varie per attacco, pulizia spigoli, utilizzo H3. -- 2022/11/30 Modifiche su SCC per TURN. -- 2023/01/18 Aggiunta, se richiesta, una lavorazione ulteriore con sega a catena nei casi in cui la doppia lama non sia sufficiente. -- 2023/01/26 Rimossa la pulitura della faccia laterale nel caso in cui la feature abbia almeno una faccia rivolta verso il basso. @@ -23,6 +23,7 @@ -- 2023/02/21 Verso di avanzamento della lama migliorato anche con lama LC. -- 2023/02/22 Nuova gestione del verso di avanzamento ottimale che contempla tutti i casi. -- 2023/03/06 Correzione per i casi con lavorazione limitata. +-- 2023/03/15 Modifica alla lavorazione ulteriore con sega a catena per togliere il codolo e lasciare solo dei punti di supporto. -- Tabella per definizione modulo local ProcessLongCut = {} @@ -351,12 +352,13 @@ end --------------------------------------------------------------------- -- lavorazione faccia laterale con sega a catena -local function MakeSideFaceByChainSaw( nSurfId, dDepth, dOffs, dSal, dEal) +local function MakeSideFaceByChainSaw( nSurfId, dDepth, dOffs, dSal, dEal, bShortenStart, bShortenEnd) -- Recupero i dati dell'utensile local sSawing = ML.FindSawing( 'Sawing') local dMaxMat = 0 local dSawCornerRad = 0 local dSawThick = 0 + local dSawDiameter = 0 -- se non trova una lavorazione di sawing esco if not sSawing then local sErr = 'Error : Sawing not found in library' @@ -369,6 +371,7 @@ local function MakeSideFaceByChainSaw( nSurfId, dDepth, dOffs, dSal, dEal) dMaxMat = EgtTdbGetCurrToolParam( MCH_TP.MAXMAT) or dMaxMat dSawThick = EgtTdbGetCurrToolParam( MCH_TP.THICK) or dSawThick dSawCornerRad = EgtTdbGetCurrToolParam( MCH_TP.CORNRAD) or dSawCornerRad + dSawDiameter = EgtTdbGetCurrToolParam( MCH_TP.DIAM) or dSawDiameter end end end @@ -392,9 +395,19 @@ local function MakeSideFaceByChainSaw( nSurfId, dDepth, dOffs, dSal, dEal) EgtSetMachiningParam( MCH_MP.INITANGS, BL.GetChainSawInitAngs( vtN, vtOrtho, 1)) -- imposto eventuale sovramateriale EgtSetMachiningParam( MCH_MP.OFFSR, dOffs) + -- imposto tratti in cui la sega a catena non lavora per lasciare del materiale di supporto + local dSupportingWoodLength = 30 -- imposto allungamento percorso iniziale e finale - EgtSetMachiningParam( MCH_MP.STARTADDLEN, dSal) - EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal) + if bShortenStart then + EgtSetMachiningParam( MCH_MP.STARTADDLEN, dSal - dSupportingWoodLength - dSawDiameter) + else + EgtSetMachiningParam( MCH_MP.STARTADDLEN, dSal) + end + if bShortenEnd then + EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal - dSupportingWoodLength - dSawDiameter) + else + EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal) + end -- imposto il lato di lavorazione local nWorkSide = MCH_MILL_WS.RIGHT EgtSetMachiningParam( MCH_MP.WORKSIDE, nWorkSide) @@ -765,6 +778,10 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId, bCustUseBlade, nCus -- calcolo quanto è l'affondamento del taglio local dOffsetTopBlade = ( dWidth + dDimStrip) / 2 local dOffsetDownBlade = ( dWidth + dDimStrip) / 2 + if bFinishWithChainSaw then + dOffsetTopBlade = dWidth / 2 + dOffsetDownBlade = dWidth / 2 + end local nStepDownBlade = 1 local dStepDownBlade = dWidth - dOffsetDownBlade -- se lama da sotto verifico se la componente Y della profondità di taglio supera la capacità della lama @@ -1029,15 +1046,18 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId, bCustUseBlade, nCus -- se richiesto aggiungo la lavorazione con sega a catena if bFinishWithChainSaw then local dChainSawOverMaterial = 0 - local dChainSawDepth = dOffsetDownBlade - dDimStrip + local dChainSawDepth = dOffsetDownBlade + BD.CUT_EXTRA dEndDist = dEndDistUp dEndAccDist = dEndAccDistUp dStartDist = dStartDistUp dStartAccDist = dStartAccDistUp for i = nC, 1, -1 do - local dSal = EgtIf( i == nC, -dEndDist, - dEndAccDist - ( nC - i - 1) * dC) - local dEal = EgtIf( i == 1, -dStartDist, - dStartAccDist - ( i - 2) * dC) - local bChainSawOk, sErr = MakeSideFaceByChainSaw( Proc.Id, dChainSawDepth, dChainSawOverMaterial, dSal, dEal) + local bFirstCut = ( i == nC) + local bLastCut = ( i == 1) + local dSal = EgtIf( bFirstCut, -dEndDist, - dEndAccDist - ( nC - i - 1) * dC) + local dEal = EgtIf( bLastCut, -dStartDist, - dStartAccDist - ( i - 2) * dC) + local bShortenStartOrEnd = true + local bChainSawOk, sErr = MakeSideFaceByChainSaw( Proc.Id, dChainSawDepth, dChainSawOverMaterial, dSal, dEal, bShortenStartOrEnd, bShortenStartOrEnd) if not bChainSawOk then return false, sErr end end end @@ -1049,7 +1069,8 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId, bCustUseBlade, nCus -- recupero la lavorazione local bDownHead = ( nSide == - 1) sMchType = EgtIf( bDownHead, 'Long2Cut_H2', 'Long2Cut') - local bExcludeH3 = bLarghAsFace and abs( nSide) ~= 1 + -- rimossa l'esclusione della terza testa a seguito di modifica della testa stessa che la rende utilizzabile in tutti i casi + --local bExcludeH3 = bLarghAsFace and abs( nSide) ~= 1 local sMilling = ML.FindMilling( sMchType, dElev, nil, nil, nil, not bDownHead, bDownHead, nil, bExcludeH3) if not sMilling then local sErr = 'Error : milling '..sMchType..' not found in library' diff --git a/Version.lua b/Version.lua index eb28bd6..8b30290 100644 --- a/Version.lua +++ b/Version.lua @@ -1,4 +1,4 @@ -- Version.lua by Egaltech s.r.l. 2023/03/13 -- Gestione della versione di Beam -VERSION = '2.5c4' +VERSION = '2.5c5'