DataBeam :
- in processo FreeContour ora viene gestita la scelta utensile di BTL - aggiunta gestione processo Variant (custom) - aggiunta gestione lavorazioni di superficie - anche in forature, svuotature e superfici fatte di lato sui fianchi si imposta il flag di esecuzione dopo i tagli dei contorni (MOVE_AFTER).
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
-- WProcessLapJoint.lua by Egaltech s.r.l. 2021/04/28
|
||||
-- WProcessLapJoint.lua by Egaltech s.r.l. 2021/08/29
|
||||
-- Gestione calcolo mezzo-legno per Pareti
|
||||
-- 2021/08/27 DS Se tre o più facce con flag PCKT=1 forzo svuotatura con fresa (per Variant).
|
||||
-- 2021/08/29 DS Se svuotatura di fianco setto flag per farla dopo i tagli.
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local WPL = {}
|
||||
@@ -1295,6 +1297,10 @@ local function MakeByPocketing( Proc, nFacet, nRawId, b3Raw, bCheckQPar)
|
||||
return false, sErr
|
||||
end
|
||||
EgtSetInfo( nMchFId, 'Part', Proc.PartId)
|
||||
-- se lavorazione di fianco setto la nota per spostarla dopo i tagli di lama
|
||||
if vtN:getZ() < WD.NZ_MINA then
|
||||
EgtSetInfo( nMchFId, 'MOVE_AFTER', 1)
|
||||
end
|
||||
-- aggiungo geometria
|
||||
EgtSetMachiningGeometry( {{ Proc.Id, nFacet}})
|
||||
-- imposto posizione braccio porta testa
|
||||
@@ -1512,6 +1518,8 @@ end
|
||||
local function MakeMoreFaces( Proc, nRawId, b3Raw)
|
||||
-- con una faccia di fondo valida
|
||||
if Proc.Stype == 1 or Proc.Stype == 2 then
|
||||
-- recupero eventuale flag forzatura svuotatura
|
||||
local bPckt = ( EgtGetInfo( Proc.Id, 'PCKT', 'i') == 1)
|
||||
-- cerco la faccia con il maggior numero di adiacenze
|
||||
local nFacInd, dElev, nFacInd2, dElev2 = WL.GetFaceWithMostAdj( Proc.Id, Proc.PartId)
|
||||
-- se necessario scambio le facce
|
||||
@@ -1521,7 +1529,7 @@ local function MakeMoreFaces( Proc, nRawId, b3Raw)
|
||||
local vtN = EgtSurfTmFacetNormVersor( Proc.Id, nFacInd, GDB_ID.ROOT)
|
||||
local _, dH, dV = EgtSurfTmFacetMinAreaRectangle( Proc.Id, nFacInd, GDB_ID.ROOT)
|
||||
-- se di fianco
|
||||
if Proc.Fct >= 3 and vtN:getZ() < WD.NZ_MINA then
|
||||
if not bPckt and Proc.Fct >= 3 and vtN:getZ() < WD.NZ_MINA then
|
||||
-- fresatura (se definita)
|
||||
local sMilling, _, dMaxMat, dDiam = WM.FindMilling( 'SideGroove')
|
||||
if sMilling and dElev < dDiam / 2 - 30 and dMaxMat <= min( dH, dV) + 20 * GEO.EPS_SMALL then
|
||||
@@ -1531,7 +1539,7 @@ local function MakeMoreFaces( Proc, nRawId, b3Raw)
|
||||
return MakeByChainSaw( Proc, nFacInd, nRawId, b3Raw, dElev, dH, dV)
|
||||
end
|
||||
end
|
||||
local nFacet = EgtIf( vtN:getZ() >= WD.NZ_MINA, nFacInd, nFacInd2)
|
||||
local nFacet = EgtIf( bPckt or vtN:getZ() >= WD.NZ_MINA, nFacInd, nFacInd2)
|
||||
-- eseguo la svuotatura
|
||||
return MakeByPocketing( Proc, nFacet, nRawId, b3Raw, true)
|
||||
-- fessura verticale
|
||||
|
||||
Reference in New Issue
Block a user