cd0d0fe1c9
- aggiunta possibilità di posizionare i pezzi nei quattro angoli della tavola (da WD.ORIG_CORNER con valori BL,TL,BR,TR) - corretta classificazione Tagli con Lama.
45 lines
1.4 KiB
Lua
45 lines
1.4 KiB
Lua
-- ProcessCut.lua by Egaltech s.r.l. 2020/11/13
|
|
-- Gestione calcolo taglio di testa o longitudinale per Pareti
|
|
|
|
-- Tabella per definizione modulo
|
|
local WPC = {}
|
|
|
|
-- Include
|
|
require( 'EgtBase')
|
|
local WL = require( 'WallLib')
|
|
local FreeContour = require( 'WProcessFreeContour')
|
|
|
|
EgtOutLog( ' WProcessCut started', 1)
|
|
|
|
-- Dati
|
|
local WD = require( 'WallData')
|
|
local WM = require( 'WMachiningLib')
|
|
|
|
---------------------------------------------------------------------
|
|
-- Riconoscimento della feature
|
|
function WPC.Identify( Proc)
|
|
return ( (( Proc.Grp == 1 or Proc.Grp == 2) and Proc.Prc == 10) or
|
|
(( Proc.Grp == 0 or Proc.Grp == 3 or Proc.Grp == 4) and Proc.Prc == 10))
|
|
end
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
-- Classificazione della feature
|
|
function WPC.Classify( Proc, b3Raw)
|
|
-- verifico abbia una sola faccia
|
|
if Proc.Fct ~= 1 then return false end
|
|
-- controllo la normale
|
|
local ptC, vtN = EgtSurfTmFacetCenter( Proc.Id, 0, GDB_ID.ROOT)
|
|
if abs( vtN:getZ()) < -0.5 then return false end
|
|
return true
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
-- Applicazione della lavorazione
|
|
function WPC.Make( Proc, nRawId, b3Raw)
|
|
return FreeContour.Make( Proc, nRawId, b3Raw)
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
return WPC
|