Corretta gestione indice rotazione iniziale in caso di pezzo senza lavorazioni (solo taglio testa e coda)
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user