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