DataWall :
- aggiunta gestione feature DoubleCut - aggiunta gestione feature SawCut - modifica gestione FreeContour con una sola faccia - correzioni per nesting pareti.
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
-- WProcessDoubleCut.lua by Egaltech s.r.l. 2021/04/28
|
||||
-- Gestione calcolo doppi tagli di lama per Pareti
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local WPDC = {}
|
||||
|
||||
-- Include
|
||||
require( 'EgtBase')
|
||||
local WL = require( 'WallLib')
|
||||
local Cut = require( 'WProcessCut')
|
||||
local LapJoint = require( 'WProcessLapJoint')
|
||||
|
||||
EgtOutLog( ' WProcessDoubleCut started', 1)
|
||||
|
||||
-- Dati
|
||||
local WD = require( 'WallData')
|
||||
local ML = require( 'WMachiningLib')
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Riconoscimento della feature
|
||||
function WPDC.Identify( Proc)
|
||||
return ( (( Proc.Grp == 1 or Proc.Grp == 2) and Proc.Prc == 11) or
|
||||
( Proc.Grp == 0 and Proc.Prc == 12))
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Classificazione della feature
|
||||
function WPDC.Classify( Proc, b3Raw)
|
||||
-- se una faccia, uso la classificazione dei tagli singoli
|
||||
if Proc.Fct == 1 then return Cut.Classify( Proc, b3Raw) end
|
||||
-- se più di due facce non si fa
|
||||
if Proc.Fct > 2 then return false end
|
||||
-- dati delle facce
|
||||
local vtN = {}
|
||||
vtN[1] = EgtSurfTmFacetNormVersor( Proc.Id, 0, GDB_ID.ROOT)
|
||||
vtN[2] = EgtSurfTmFacetNormVersor( Proc.Id, 1, GDB_ID.ROOT)
|
||||
-- verifico se è lavorabile da sopra o di fianco
|
||||
return ( vtN[1]:getZ() >= - 0.01 or vtN[2]:getZ() >= - 0.01)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Applicazione della lavorazione
|
||||
function WPDC.Make( Proc, nRawId, b3Raw)
|
||||
-- se singola faccia, passo a quella lavorazione
|
||||
if Proc.Fct == 1 then return Cut.Make( Proc, nRawId, b3Raw) end
|
||||
-- altrimenti due facce e passo alla LapJoint
|
||||
return LapJoint.Make( Proc, nRawId, b3Raw)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
return WPDC
|
||||
Reference in New Issue
Block a user