-- 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