26753f8aab
- aggiunto controllo tipo lavorazione nelle ricerche - corretto controllo inclinazione tagli per essere lavorabili - in foratura nella ricerca dell'utensile/lavorazione si tiene conto della profondità del foro - in taglio con lama possibilità di demandare lato mandrino a funzione di macchina WallData.GetSawHeadSide - in chiodature aggiunta possibilità di lavorare in doppio con funzione di macchina WallData.FindFeaturesInDouble.
45 lines
1.4 KiB
Lua
45 lines
1.4 KiB
Lua
-- WProcessCut.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()) < WD.NZ_MINA 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
|