From fd828a45da34f79e8b1197c8e6d1888e969a2be9 Mon Sep 17 00:00:00 2001 From: Annamaria Sassi Date: Mon, 27 Jul 2026 13:37:52 +0200 Subject: [PATCH] CAMAuto : - modificato offset in testa e coda per renderlo pinzabile sempre --- CAMAuto/LuaLibs/WinExec.lua | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/CAMAuto/LuaLibs/WinExec.lua b/CAMAuto/LuaLibs/WinExec.lua index 53d4445..c314253 100644 --- a/CAMAuto/LuaLibs/WinExec.lua +++ b/CAMAuto/LuaLibs/WinExec.lua @@ -538,7 +538,7 @@ function WinExec.ProcessFeatures( PARTS) local maxOffsetX = {} for i = 1, #PARTS do - maxOffsetX[i] = 99 - PARTS[i].OffsetPartToRaw.X + maxOffsetX[i] = 99 - PARTS[i].RawOffset.dOverMatLeft - PARTS[i].OffsetPartToRaw.X end for i = 1, #MACHININGS do @@ -547,7 +547,7 @@ function WinExec.ProcessFeatures( PARTS) local bIsApplyOk, sErr, b3MachEncumbrance = MachiningLib.AddOperation( MACHININGS[i]) -- TODO ingombro lavorazione mi restituisce dati sbagliati. C'è un riferimento? -- se feature di testa, sposto testa in base a ingombro lavorazione if MACHININGS[i].Proc.bHeadProfile and b3MachEncumbrance then - PARTS[MACHININGS[i].Proc.nIndexPart].DispOffsets.Phase1.dOffsetX = min( b3MachEncumbrance:getMax():getX() - PARTS[MACHININGS[i].Proc.nIndexPart].b3Part:getMin():getX() + 45, maxOffsetX[MACHININGS[i].Proc.nIndexPart]) + PARTS[MACHININGS[i].Proc.nIndexPart].DispOffsets.Phase1.dOffsetX = max( b3MachEncumbrance:getMax():getX() - PARTS[MACHININGS[i].Proc.nIndexPart].b3Part:getMin():getX() + 5, maxOffsetX[MACHININGS[i].Proc.nIndexPart]) end end end @@ -564,6 +564,9 @@ function WinExec.ProcessFeatures( PARTS) end end + for i = 1, #PARTS do + maxOffsetX[i] = 99 - PARTS[i].RawOffset.dOverMatRight - PARTS[i].OffsetPartToRaw.X + end -- scrivo lavorazioni seconda fase EgtSetCurrPhase( 2) UpdateRawPosition( PARTS) @@ -573,7 +576,7 @@ function WinExec.ProcessFeatures( PARTS) local bIsApplyOk, sErr, b3MachEncumbrance = MachiningLib.AddOperation( MACHININGS[i]) -- TODO ingombro lavorazione mi restituisce dati sbagliati. C'è un riferimento? -- se feature di testa, sposto testa in base a ingombro lavorazione if MACHININGS[i].Proc.bHeadProfile and b3MachEncumbrance then - PARTS[MACHININGS[i].Proc.nIndexPart].DispOffsets.Phase2.dOffsetX = min( PARTS[MACHININGS[i].Proc.nIndexPart].b3Part:getMax():getX() - b3MachEncumbrance:getMin():getX() + 45, 94) + PARTS[MACHININGS[i].Proc.nIndexPart].DispOffsets.Phase2.dOffsetX = max( PARTS[MACHININGS[i].Proc.nIndexPart].b3Part:getMax():getX() - b3MachEncumbrance:getMin():getX() + 5, maxOffsetX[MACHININGS[i].Proc.nIndexPart]) end end end