Corretta gestione indice rotazione iniziale in caso di pezzo senza lavorazioni (solo taglio testa e coda)

This commit is contained in:
andrea.villa
2025-03-19 07:56:36 +01:00
parent d674eec6ff
commit 6f215f9849
+5 -5
View File
@@ -1394,6 +1394,7 @@ function BeamExec.ProcessMachinings( PARTS)
local bIsCombinationMachinable = false
local vProc, MatrixResult
while not bIsCombinationMachinable do
bIsCombinationMachinable = true
local bAllStrategiesApplied = false
-- si calcola la combinazione di lavorazione migliore
vProc, MatrixResult = GetBestResultFromCombinationsMatrix( PROCESSINGS[nPart], PARTS[nPart])
@@ -1411,17 +1412,16 @@ function BeamExec.ProcessMachinings( PARTS)
MACHININGS.Info.nSplitCutRotation = 1
-- sltrimenti si fanno tutti i calcoli
else
-- salvo sul PART la posizione di partenza che è stata scelta
PARTS[nPart].nInitialPosition = MatrixResult.nInitialPosition
-- ordinamento di base delle feature
vProc = OrderFeatures( vProc)
-- esegue le strategie migliori che ha precedentemente scelto e salva le lavorazioni nella lista globale
bAllStrategiesApplied = false
MACHININGS, bAllStrategiesApplied = CalculateMachinings( vProc, PARTS[nPart], PARTS[nPart].nInitialPosition)
MACHININGS, bAllStrategiesApplied = CalculateMachinings( vProc, PARTS[nPart], MatrixResult.nInitialPosition)
bIsCombinationMachinable = bAllStrategiesApplied
end
-- salvo sul PART la posizione di partenza che è stata scelta
PARTS[nPart].nInitialPosition = MatrixResult.nInitialPosition
-- aggiunge tagli testa e coda in fasi opportune
local nRotHeadCut = MatrixResult.nInitialPosition + MACHININGS.Info.nHeadCutRotation - 1
@@ -1451,7 +1451,7 @@ function BeamExec.ProcessMachinings( PARTS)
table.insert( vProcHeadTail, PROCESSINGS[nPart].Rotation[nRotSplitCut][MatrixResult.nIndexTailCutInVProc])
bAllStrategiesApplied = false
MACHININGS, bAllStrategiesApplied = CalculateMachinings( vProcHeadTail, PARTS[nPart], PARTS[nPart].nInitialPosition)
MACHININGS, bAllStrategiesApplied = CalculateMachinings( vProcHeadTail, PARTS[nPart], MatrixResult.nInitialPosition)
bIsCombinationMachinable = bIsCombinationMachinable and bAllStrategiesApplied
end