From beedbc71f1137f2eaecb64930c05018ae83dc68e Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Wed, 10 Jun 2026 09:20:37 +0200 Subject: [PATCH] - in BLADETOWASTE.CalculateDiceMachinings grezzo dinamico per evitare collisioni in presimulazione, da completare --- StrategyLibs/BLADETOWASTE.lua | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/StrategyLibs/BLADETOWASTE.lua b/StrategyLibs/BLADETOWASTE.lua index 287444b..a44dae3 100644 --- a/StrategyLibs/BLADETOWASTE.lua +++ b/StrategyLibs/BLADETOWASTE.lua @@ -797,6 +797,10 @@ local function CalculateDiceMachinings( vCuts, Parameters) local bCannotSplitRestLength = Parameters.bCannotSplitRestLength local bReduceDiceDepth = Parameters.bReduceDiceDepth + -- trimesh con RestLength + local b3CheckCollision = BeamLib.GetPartBoxWithHeadTail( Part, sRestLengthSideForPreSimulation) + local idCheckCollisionTm = EgtSurfTmBBox( Part.idTempGroup, b3CheckCollision, false, GDB_RT.GLOB) + -- eventuale inversione tagli ortogonali e aggiunta informazioni alla geometria local bAreOrthogonalCutsInverted = false for i = 1, #vCuts do @@ -877,6 +881,15 @@ local function CalculateDiceMachinings( vCuts, Parameters) bMoveAfterSplit = true end end + + -- aggiornamento grezzo dinamico + -- TODO + if ( i >= 3) and ( i % 2) > 0 then + local idMergedParallelCutsSurf = EgtSurfTmBySewing( nAddGrpId, vCuts[i], false) + idCheckCollisionTm = nil + + end + else EgtErase( nSurfToCut) bIsDicingOk = false @@ -936,6 +949,15 @@ local function CalculateDiceMachinings( vCuts, Parameters) if Cutting.sStage == 'AfterTail' then bMoveAfterSplit = true end + + -- aggiornamento grezzo dinamico + -- TODO + if ( i >= 3) and ( i % 2) > 0 then + local nAddGrpId = BeamLib.GetAddGroup( Part.id) + local idMergedParallelCutsSurf = EgtSurfTmBySewing( nAddGrpId, vCuts[i], false) + idCheckCollisionTm = nil + + end end end end