diff --git a/BatchProcess.lua b/BatchProcess.lua index 8274532..d15dc89 100644 --- a/BatchProcess.lua +++ b/BatchProcess.lua @@ -520,6 +520,12 @@ else end -- Aggiorno eventuali dati ausiliari UpdateAuxData( sBtmFile) + + -- Anche se non è da riprocessare, imposto nome file CN. + -- Se file TS7 importato da altro PC, 'BEAM.FILE' è cambiato da un PC all'altro. Di conseguenza si deve aggiornare nome file che si andrà a generare. + local _, sName, _ = EgtSplitPath( BEAM.FILE) + EgtSetInfo( EgtGetLastMachGroup(), 'NcName', sName .. '.cnc') + -- Passo in modalità lavora EgtSetCurrMachGroup( EgtGetLastMachGroup()) -- Se necessario eseguo aggiornamento con ricalcolo delle lavorazioni diff --git a/LuaLibs/WProcessDoubleCut.lua b/LuaLibs/WProcessDoubleCut.lua index eee06f1..591dcdc 100644 --- a/LuaLibs/WProcessDoubleCut.lua +++ b/LuaLibs/WProcessDoubleCut.lua @@ -36,14 +36,17 @@ end function WPDC.Classify( Proc, b3Raw) -- se una faccia, uso la classificazione dei tagli singoli if Proc.Fct == 1 then return Cut.Classify( Proc, b3Raw) end + -- se più di due facce non si fa if Proc.Fct > 2 then return false end - -- dati delle facce + + -- se due facce si verifica solamente se le facce non sono troppo orientate verso il basso (per due facce unite sul lato lungo il check è fatto nella LapJoint) local vtN = {} vtN[1] = EgtSurfTmFacetNormVersor( Proc.Id, 0, GDB_ID.ROOT) vtN[2] = EgtSurfTmFacetNormVersor( Proc.Id, 1, GDB_ID.ROOT) - -- verifico se è lavorabile da sopra o di fianco - return ( vtN[1]:getZ() >= - 0.01 or vtN[2]:getZ() >= - 0.01) + local bIsMachinable = ( vtN[1]:getZ() >= ( WD.CUT_VZ_MIN or - 0.5)) and ( vtN[2]:getZ() >= ( WD.CUT_VZ_MIN or - 0.5)) + + return bIsMachinable end ---------------------------------------------------------------------- diff --git a/LuaLibs/WProcessFreeContour.lua b/LuaLibs/WProcessFreeContour.lua index 2e31524..c5a4598 100644 --- a/LuaLibs/WProcessFreeContour.lua +++ b/LuaLibs/WProcessFreeContour.lua @@ -2122,6 +2122,12 @@ local function MakeByMill( Proc, nRawId, b3Raw) EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.LEFT) elseif ( Proc.Grp == 3 and bToolInv) or ( Proc.Grp == 4 and not bToolInv) then EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.RIGHT) + elseif ( Proc.Grp == 1 or Proc.Grp == 2) then + if bToolInv then + EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.LEFT) + else + EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.RIGHT) + end end -- se lamatura affondata speciale (cliente 90480029), setto attacco e stacco al centro @@ -2606,6 +2612,9 @@ function WPF.Make( Proc, nRawId, b3Raw, vNLO, b3Squaring) ReorderFaces( Proc.Id, EgtSurfTmFacetCount( Proc.Id)) -- recupero il tipo di lavorazione local nCntType = EgtGetInfo( Proc.Id, 'CNT_TYPE', 'i') or 0 + if WD.FORCE_MILL_CONTOUR == true then + nCntType = 2 + end -- se fresatura if nCntType == 2 then return MakeByMill( Proc, nRawId, b3Raw) diff --git a/UpdateLog.txt b/UpdateLog.txt index f5db89d..1088ac1 100644 --- a/UpdateLog.txt +++ b/UpdateLog.txt @@ -1,5 +1,10 @@ ==== Wall Update Log ==== +Versione 2.7f1 (05/06/2025) +- Added : gestita forzatura freecontour di fresa per macchine senza lama (costante WallData FORCE_MILL_CONTOUR) +- Modif : migliorata DoubleCut +- Fixed : corretta BatchProcess per caso in cui il nome del file cnc generato non era corretto + Versione 2.7d1 (14/04/2025) - Added : in DoubleCut aggiunta Q06 per forzare utilizzo lama diff --git a/Version.lua b/Version.lua index 233ba89..1313302 100644 --- a/Version.lua +++ b/Version.lua @@ -2,5 +2,5 @@ -- Gestione della versione di Wall NAME = 'Wall' -VERSION = '2.7d1' +VERSION = '2.7f1' MIN_EXE = '2.6k1'