DataBeam :

- migliorie e correzioni varie.
This commit is contained in:
Dario Sassi
2019-04-15 06:35:45 +00:00
parent 055968ca9f
commit 03e256a2f2
6 changed files with 167 additions and 43 deletions
+27 -5
View File
@@ -1,4 +1,4 @@
-- ProcessCut.lua by Egaltech s.r.l. 2019/03/23
-- ProcessCut.lua by Egaltech s.r.l. 2019/04/13
-- Gestione calcolo singoli tagli di lama per Travi
-- Tabella per definizione modulo
@@ -116,7 +116,11 @@ function ProcessCut.Make( Proc, nPhase, nRawId, nPartId, dOvmHead)
if i % 2 == 1 then
nOrthoOpposite = BL.GetNearestOrthoOpposite( vtN)
else
nOrthoOpposite = BL.GetNearestOrthoOpposite( vtO)
if #vCuts[i-1] > 0 then
nOrthoOpposite = BL.GetNearestOrthoOpposite( vtO)
else
nOrthoOpposite = MCH_MILL_FU.ORTHO_DOWN
end
end
else
if bHorizCut then
@@ -129,9 +133,27 @@ function ProcessCut.Make( Proc, nPhase, nRawId, nPartId, dOvmHead)
end
-- lavoro la faccia
for j = 1, #vCuts[i] do
local bOk, sErr = BL.MakeOneFaceBySaw( vCuts[i][j], 0, sCutting, dSawDiam, nOrthoOpposite, 0, BD.CUT_SIC, 0, nil, b3Raw)
if not bOk then
return bOk, sErr
-- se taglio dal basso
if bDownCut then
-- se strato pari composto da 1 o 2 elementi
if i % 2 == 0 and #vCuts[i] <= 2 then
-- il primo elemento prende la direzione prevista, il secondo quella opposta
local nNewOrthoOpposite = nOrthoOpposite
if j ~= 1 then
nNewOrthoOpposite = EgtIf( nOrthoOpposite == MCH_MILL_FU.ORTHO_FRONT, MCH_MILL_FU.ORTHO_BACK, MCH_MILL_FU.ORTHO_FRONT)
end
local bOk, sErr = BL.MakeOneFaceBySaw( vCuts[i][j], 0, sCutting, dSawDiam, nNewOrthoOpposite, 0, BD.CUT_SIC, 0, nil, b3Raw)
if not bOk then
return bOk, sErr
end
end
-- tutti gli altri casi vengono saltati
-- caso generale
else
local bOk, sErr = BL.MakeOneFaceBySaw( vCuts[i][j], 0, sCutting, dSawDiam, nOrthoOpposite, 0, BD.CUT_SIC, 0, nil, b3Raw)
if not bOk then
return bOk, sErr
end
end
end
end