DataBeam :
- cambiato nome modulo ProcessBlockHouseFront.lua in ProcessBlockHausFront.lua - in BeamLib.MakeOneFaceBySaw gestito offset longitudinale per calcolo attacco/uscita - DiceCut se faccia principale inclinata verso il basso si parte sempre da sopra - in MachiningLib.FindMilling aggiunta possibilità gestione massimo affondamento richiesto - corretto riconoscimento fori da sotto - in LapJoint corretto angolo 3° asse fittizio per sega a catena - in Tenone aggiunta gestione scelta utensile in base all'altezza dello stesso.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
-- ProcessDrill.lua by Egaltech s.r.l. 2020/02/20
|
||||
-- ProcessDrill.lua by Egaltech s.r.l. 2020/02/26
|
||||
-- Gestione calcolo forature per Travi
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
@@ -26,7 +26,27 @@ end
|
||||
---------------------------------------------------------------------
|
||||
-- Classificazione della feature
|
||||
function ProcessDrill.IsHeadFeature( Proc, b3Raw, dCurrOvmH)
|
||||
return false
|
||||
-- verifico se è in testa
|
||||
if Proc.Box:getMax():getX() < b3Raw:getMax():getX() - dCurrOvmH - BD.MAX_DIST_HTFEA then
|
||||
return false
|
||||
end
|
||||
-- recupero e verifico l'entità foro
|
||||
local AuxId = EgtGetInfo( Proc.Id, 'AUXID', 'i') or 0
|
||||
if AuxId then AuxId = AuxId + Proc.Id end
|
||||
if not AuxId or EgtGetType( AuxId) ~= GDB_TY.CRV_ARC then
|
||||
return false
|
||||
end
|
||||
local vtExtr = EgtCurveExtrusion( AuxId, GDB_RT.GLOB)
|
||||
-- se entrata principale
|
||||
if Proc.Flg > 0 then
|
||||
local nFcs = EgtGetInfo( Proc.Id, 'FCS', 'i') or 0
|
||||
return ( ( nFcs == 5 or nFcs == 6) and vtExtr:getX() > 0.5)
|
||||
-- altrimenti entrata opposta
|
||||
else
|
||||
local nFce = EgtGetInfo( Proc.Id, 'FCE', 'i') or 0
|
||||
return ( ( nFce == 5 or nFce == 6) and vtExtr:getX() < -0.5)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
@@ -101,7 +121,7 @@ function ProcessDrill.Classify( Proc, b3Raw)
|
||||
return false, false
|
||||
end
|
||||
local bOpen = ( Proc.Fce ~= 0)
|
||||
local bFaceDown = ( ptCen:getZ() < b3Raw:getMin():getZ() + dDiam)
|
||||
local bFaceDown = ( ptCen:getZ() < b3Raw:getMin():getZ() + dDiam / 2 and not Proc.Head and not Proc.Tail)
|
||||
-- verifico se il foro è fattibile solo da sotto
|
||||
local bDown = (( vtExtr:getZ() < BD.DRILL_VZ_MIN or bFaceDown) and ( not bOpen or Proc.Flg ~= 1))
|
||||
return true, bDown
|
||||
|
||||
Reference in New Issue
Block a user