Compare commits

...

6 Commits

3 changed files with 25 additions and 10 deletions
+17 -7
View File
@@ -1367,7 +1367,7 @@ local function MakeByMill( Proc, nFacet, nOthFac, nRawId, b3Raw, dSideDist)
if not sMilling then if not sMilling then
local sErr = 'Error : Side not found in library' local sErr = 'Error : Side not found in library'
EgtOutLog( sErr) EgtOutLog( sErr)
return false, sErr, true return false, sErr
end end
-- recupero i dati dell'utensile -- recupero i dati dell'utensile
local dMillDiam = 20 local dMillDiam = 20
@@ -1390,13 +1390,13 @@ local function MakeByMill( Proc, nFacet, nOthFac, nRawId, b3Raw, dSideDist)
if dMillDiam < dDiam or dMaxDepth < dElev then if dMillDiam < dDiam or dMaxDepth < dElev then
local sErr = 'Error : Side Elevation too big' local sErr = 'Error : Side Elevation too big'
EgtOutLog( sErr) EgtOutLog( sErr)
return false, sErr, true return false, sErr
end end
local dMillExtra = dMillTotLen - dMillLen local dMillExtra = dMillTotLen - dMillLen
if Proc.Box:getMin():getZ() - dMillExtra < b3Raw:getMin():getZ() - 10 * GEO.EPS_SMALL then if Proc.Box:getMin():getZ() - dMillExtra < b3Raw:getMin():getZ() - 10 * GEO.EPS_SMALL then
local sErr = 'Error : Tool collide with table' local sErr = 'Error : Tool collide with table'
EgtOutLog( sErr) EgtOutLog( sErr)
return false, sErr, true return false, sErr
end end
-- inserisco la lavorazione di contornatura -- inserisco la lavorazione di contornatura
local sName = 'Mill_' .. ( EgtGetName( Proc.Id) or tostring( Proc.Id)) local sName = 'Mill_' .. ( EgtGetName( Proc.Id) or tostring( Proc.Id))
@@ -1453,7 +1453,7 @@ local function MakeByMill( Proc, nFacet, nOthFac, nRawId, b3Raw, dSideDist)
if not EgtApplyMachining( true, false) then if not EgtApplyMachining( true, false) then
local _, sErr = EgtGetLastMachMgrError() local _, sErr = EgtGetLastMachMgrError()
EgtSetOperationMode( nMchFId, false) EgtSetOperationMode( nMchFId, false)
return false, sErr return false, sErr, nMchFId
end end
return true return true
end end
@@ -2296,6 +2296,13 @@ local function MakeSideGrooveByMill( Proc, nFacet, nRawId, b3Raw, sCustomMach, d
EgtOutLog( sErr) EgtOutLog( sErr)
return false, sErr return false, sErr
end end
local _, nUseMillOnSide = EvaluateQParam( Proc)
if nUseMillOnSide and nUseMillOnSide < 2 and ( Proc.Fct > 3 or ( Proc.Fct == 3 and not Proc.IsThrough)) then
sWarn = 'Warning in LapJoint : Sidemill damage finished part'
EgtOutLog( sWarn)
end
return true, sWarn return true, sWarn
end end
@@ -2797,8 +2804,11 @@ local function MakeTwoFaces( Proc, nRawId, b3Raw)
bLikeAsMakeFirstGroove = false bLikeAsMakeFirstGroove = false
return MakeSideGrooveByMill( Proc, nFacetVert, nRawId, b3Raw, EgtIf( bEnableMillOnSide and dMaxDepthOnSide, sMillOnSide, nil), dMaxDepthOnSide, bMakeFirstGroove, bMachFromDn, dAng, bLikeAsMakeFirstGroove, nil, nil, bDoubleMillOnSide) return MakeSideGrooveByMill( Proc, nFacetVert, nRawId, b3Raw, EgtIf( bEnableMillOnSide and dMaxDepthOnSide, sMillOnSide, nil), dMaxDepthOnSide, bMakeFirstGroove, bMachFromDn, dAng, bLikeAsMakeFirstGroove, nil, nil, bDoubleMillOnSide)
else else
local bOk, sErr, bSideMachiningNotFound = MakeByMill( Proc, nFacet, 1 - nFacet, nRawId, b3Raw, dSideDist) local bOk, sErr, nInvalidMachId = MakeByMill( Proc, nFacet, 1 - nFacet, nRawId, b3Raw, dSideDist)
if not bOk and bSideMachiningNotFound then if not bOk then
if nInvalidMachId then
EgtRemoveOperation( nInvalidMachId)
end
bOk, sErr = MakeByPocketing( Proc, nFacet, nRawId, b3Raw) bOk, sErr = MakeByPocketing( Proc, nFacet, nRawId, b3Raw)
end end
-- se angolo ottuso riprendo il lato quasi verticale -- se angolo ottuso riprendo il lato quasi verticale
@@ -2881,7 +2891,7 @@ local function MakeMoreFaces( Proc, nRawId, b3Raw)
local nFacInd, dElev, nFacInd2, dElev2 = WL.GetFaceWithMostAdj( Proc.Id, Proc.PartId) local nFacInd, dElev, nFacInd2, dElev2 = WL.GetFaceWithMostAdj( Proc.Id, Proc.PartId)
-- se necessario scambio le facce -- se necessario scambio le facce
local bIsGroove3Blind = Proc.Fct == 3 and Proc.Topology == 'Groove' and not Proc.IsThrough local bIsGroove3Blind = Proc.Fct == 3 and Proc.Topology == 'Groove' and not Proc.IsThrough
local bPreferSidemill = ( nUseMillOnSide >= 1) local bPreferSidemill = ( nUseMillOnSide > 1)
if Proc.Stype == 2 or ( bPreferSidemill and bIsGroove3Blind) then if Proc.Stype == 2 or ( bPreferSidemill and bIsGroove3Blind) then
nFacInd, dElev, nFacInd2, dElev2 = nFacInd2, dElev2, nFacInd, dElev nFacInd, dElev, nFacInd2, dElev2 = nFacInd2, dElev2, nFacInd, dElev
end end
+5
View File
@@ -1,5 +1,10 @@
==== Wall Update Log ==== ==== Wall Update Log ====
Versione 3.1h1 (18/08/2026)
- Modif : fori inclinati più meno di 28° ora gestiti anche come fori non di testa
- Modif : Q08=1 solo L e U aperte, Q08=2 tutte le tasche
- Modif : in LapJoint, se lavorazione Side non fattibile o non trovata si prova sempre la svuotatura
Versione 3.1f2 (25/06/2026) Versione 3.1f2 (25/06/2026)
- Modif : Ora si accettano offset in negativo per posizionamento pezzo su tavola - Modif : Ora si accettano offset in negativo per posizionamento pezzo su tavola
- Modif : Il Q09 aggiunto in versione 3.1f1 viene sostituito con il parametro da OFFSET -> USE_CONVENTIONAL_SAWING - Modif : Il Q09 aggiunto in versione 3.1f1 viene sostituito con il parametro da OFFSET -> USE_CONVENTIONAL_SAWING
+3 -3
View File
@@ -1,6 +1,6 @@
-- Version.lua by Egalware s.r.l. 2026/03/30 -- Version.lua by Egalware s.r.l. 2026/08/18
-- Gestione della versione di Wall -- Gestione della versione di Wall
NAME = 'Wall' NAME = 'Wall'
VERSION = '3.1f2' VERSION = '3.1h1'
MIN_EXE = '3.1c1' MIN_EXE = '3.1d1'