DataBeam :
- unificate Pocket e Notch con LapJoint - correzioni varie.
This commit is contained in:
+10
-19
@@ -1,4 +1,4 @@
|
||||
-- BeamExec.lua by Egaltech s.r.l. 2019/04/26
|
||||
-- BeamExec.lua by Egaltech s.r.l. 2019/06/14
|
||||
-- Libreria esecuzione lavorazioni per Travi
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
@@ -45,8 +45,6 @@ _G.package.loaded.ProcessLapJoint = nil
|
||||
local LapJoint = require( 'ProcessLapJoint')
|
||||
_G.package.loaded.ProcessChamfer = nil
|
||||
local Chamfer = require( 'ProcessChamfer')
|
||||
_G.package.loaded.ProcessPocket = nil
|
||||
local Pocket = require( 'ProcessPocket')
|
||||
_G.package.loaded.ProcessDrill = nil
|
||||
local Drill = require( 'ProcessDrill')
|
||||
_G.package.loaded.ProcessTenon = nil
|
||||
@@ -343,6 +341,14 @@ local function OrderFeatures( vProc, b3Raw)
|
||||
if B2.Tail and ( Split.Identify( B1) or not B1.Tail) then
|
||||
return true
|
||||
end
|
||||
-- se primo è taglio longitudinale completo, dopo tutte le altre feature non di coda
|
||||
if abs( B1.Box:getDimX() - b3Raw:getDimX()) < 100 then
|
||||
return B1.Box:getMin():getX() + 50 > B2.Box:getCenter():getX()
|
||||
end
|
||||
-- se secondo è taglio longitudinale completo, dopo tutte le altre feature non di coda
|
||||
if abs( B2.Box:getDimX() - b3Raw:getDimX()) < 100 then
|
||||
return B1.Box:getCenter():getX() > B2.Box:getMin():getX() + 50
|
||||
end
|
||||
-- se primo è foro e l'altro no, lo penalizzo
|
||||
if B1.Prc == 40 and B2.Prc ~= 40 then
|
||||
return B1.Box:getCenter():getX() > B2.Box:getMax():getX() + 100
|
||||
@@ -363,14 +369,6 @@ local function OrderFeatures( vProc, b3Raw)
|
||||
return ( B1.Diam > B2.Diam)
|
||||
end
|
||||
end
|
||||
-- se primo è taglio longitudinale completo, dopo tutte le altre feature non di coda
|
||||
if abs( B1.Box:getDimX() - b3Raw:getDimX()) < 100.0 then
|
||||
return B1.Box:getMin():getX() + 200.0 > B2.Box:getCenter():getX()
|
||||
end
|
||||
-- se secondo è taglio longitudinale completo, dopo tutte le altre feature non di coda
|
||||
if abs( B2.Box:getDimX() - b3Raw:getDimX()) < 100.0 then
|
||||
return B1.Box:getCenter():getX() > B2.Box:getMin():getX() + 200.0
|
||||
end
|
||||
-- se entrambi tenoni e si intersecano, metto prima tenone vero e poi base tenone
|
||||
if Tenon.Identify( B1) and Tenon.Identify( B2) and
|
||||
B1.Box:getMin():getX() < B2.Box:getMax():getX() + 100 * GEO.EPS_SMALL and B2.Box:getMin():getX() < B1.Box:getMax():getX() + 100 * GEO.EPS_SMALL then
|
||||
@@ -432,12 +430,9 @@ local function ClassifyFeatures( vProc, b3Raw)
|
||||
-- se mezzo-legno di testa
|
||||
elseif RidgeLap.Identify( Proc) then
|
||||
bOk, bDown = RidgeLap.Classify( Proc)
|
||||
-- se mezzo-legno
|
||||
-- se mezzo-legno, fessura, fessura frontale, notch, tasca
|
||||
elseif LapJoint.Identify( Proc) then
|
||||
bOk, bDown = LapJoint.Classify( Proc)
|
||||
-- se tasca
|
||||
elseif Pocket.Identify( Proc) then
|
||||
bOk, bDown = Pocket.Classify( Proc)
|
||||
-- se foratura
|
||||
elseif Drill.Identify( Proc) then
|
||||
bOk, bDown = Drill.Classify( Proc, b3Raw)
|
||||
@@ -565,10 +560,6 @@ local function AddFeatureMachining( Proc, nPhase, nRawId, nPartId, dCurrOvmH, b3
|
||||
elseif Chamfer.Identify( Proc) then
|
||||
-- esecuzione smusso
|
||||
bOk, sErr = Chamfer.Make( Proc, nPhase, nRawId, nPartId)
|
||||
-- se tasca ( 4-039-X) o ( 3/4-032-X)
|
||||
elseif Pocket.Identify( Proc) then
|
||||
-- esecuzione tasca
|
||||
bOk, sErr = Pocket.Make( Proc, nPhase, nRawId, nPartId)
|
||||
-- se foratura ( 3/4-040-X)
|
||||
elseif Drill.Identify( Proc) then
|
||||
-- esecuzione foratura
|
||||
|
||||
Reference in New Issue
Block a user