From 1af37a55893bb03ea33e45171da97809e846c4ab Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Thu, 2 Apr 2026 17:44:24 +0200 Subject: [PATCH] - in BeamExec si abilita riduzione foratura con MaxElev anche per tagli di testa --- LuaLibs/BeamExec.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/LuaLibs/BeamExec.lua b/LuaLibs/BeamExec.lua index b225083..a2dce21 100644 --- a/LuaLibs/BeamExec.lua +++ b/LuaLibs/BeamExec.lua @@ -443,7 +443,7 @@ local function CalcHeadTailMachBeforeIntersDrillings( vProc, b3Raw) for i = 1, #vProc do local Proc = vProc[i] if Proc.Box and not Proc.Box:isEmpty() then - if Proc.Fct == 1 and BL.IsFeatureCuttingEntireSection( Proc.Box, b3Raw:getDimY(), b3Raw:getDimZ()) and ( Proc.Head or Proc.Tail) and Proc.Prc ~= 340 and Proc.Prc ~= 350 then + if Proc.Fct == 1 and BL.IsFeatureCuttingEntireSection( Proc.Box, b3Raw:getDimY(), b3Raw:getDimZ()) and ( Proc.Head or Proc.Tail) and Proc.Prc ~= 350 then if Proc.Head and Proc.Box:getCenter():getX() < dHeadX then dHeadX = Proc.Box:getCenter():getX() nHeadId = Proc.Id @@ -2211,14 +2211,14 @@ function GetFeatureInfoAndDependency( vProc, b3Raw, nPartId) Proc.PassedByHole = true end -- se taglio attraversato da foro, si definisce precedenza in base ad angolo - if Drill.Identify( Proc) and Cut.Identify( ProcB) and Overlaps( Proc.Box, ProcB.Box) then + if Drill.Identify( Proc) and ( Cut.Identify( ProcB) or ProcB.Prc == 340 or ProcB.Proc == 350) and Overlaps( Proc.Box, ProcB.Box) then -- recupero e verifico l'entità foro local DrillAuxId = ( EgtGetInfo( Proc.Id, 'AUXID', 'i') or 0) + Proc.Id local vtDrillExtr = EgtCurveExtrusion( DrillAuxId, GDB_RT.GLOB) local bOpen = ( Proc.Fce ~= 0) and ( Proc.Fce ~= Proc.Fcs) local ptCut, vtCutN = EgtSurfTmFacetCenter( ProcB.Id, 0, GDB_ID.ROOT) local dMaxAngleDrillOnCut = BD.MAX_ANGLE_DRILL_CUT or 10 - if GetAngle( vtDrillExtr, vtCutN) > dMaxAngleDrillOnCut then + if ( GetAngle( vtDrillExtr, vtCutN) > dMaxAngleDrillOnCut) and not ( ProcB.Prc == 340 or ProcB.Proc == 350) then if bOpen and GetAngle( -vtDrillExtr, vtCutN) < dMaxAngleDrillOnCut then ProcB.Dependency = {} ProcB.Dependency.ExecBefore = Proc