- commenti
This commit is contained in:
+4
-1
@@ -575,7 +575,10 @@ function BeamLib.TableCopyDeep( OriginalTable)
|
||||
return CopiedTable
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Merge sorting - algoritmo di sorting stabile, ossia che mantiene l'ordine relativo se gli elementi sono equivalenti
|
||||
-- TODO vedere come riordinare (tutto in tabella MergeSort??)
|
||||
-- TODO libreria Sorting??
|
||||
do
|
||||
-- unisce due liste ordinate
|
||||
local function MergeHalves(Left, Right, Compare)
|
||||
@@ -618,7 +621,7 @@ do
|
||||
return MergeHalves( Left, Right, Compare)
|
||||
end
|
||||
|
||||
-- funzione per l'ordinamento che verrà chiamata da fuori
|
||||
-- chiamata accessibile dall'esterno
|
||||
function BeamLib.StableSort( List, Compare)
|
||||
return MergeSort( List, Compare)
|
||||
end
|
||||
|
||||
@@ -781,6 +781,8 @@ function MachiningLib.PrepareMachiningsForSorting( Part)
|
||||
return MACHININGS
|
||||
end
|
||||
|
||||
-- TODO convertire in tabella in cui si chiamano direttamente i nomi delle funzioni, in modo da poter cambiare l'ordine facilmente
|
||||
-- TODO libreria Sorting??
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local SortingComparisonRules = {
|
||||
-- ordine interno alla feature
|
||||
@@ -878,7 +880,7 @@ local SortingComparisonRules = {
|
||||
end,
|
||||
|
||||
-- lato di lavoro
|
||||
-- TODO questo, insieme all'ordinamento X, andranno sostituiti dallo shortest path pesato sulla quantità di rotazione della testa
|
||||
-- TODO questo, insieme all'ordinamento X, andrà sostituito dallo shortest path pesato sulla quantità di rotazione della testa
|
||||
function( MachiningA, MachiningB)
|
||||
if MachiningA.Machining.vtToolDirection:getY() < 10 * GEO.EPS_SMALL and MachiningB.Machining.vtToolDirection:getY() >= 10 * GEO.EPS_SMALL then
|
||||
return 1
|
||||
|
||||
@@ -438,6 +438,7 @@ function STR0002.Make( bAddMachining, Proc, Part, CustomParameters)
|
||||
vAddId, vAddIdTunnel = GetSplitSurfaces( Proc, Part)
|
||||
|
||||
-- si applicano le lavorazioni
|
||||
-- TODO manca la gestione delle lavorazioni dopo separazione
|
||||
for i = 1, #vAddId do
|
||||
for j = 1, #Strategy.Machining do
|
||||
if Strategy.Machining[j].bIsApplicable then
|
||||
|
||||
@@ -57,6 +57,7 @@ local function GetCompletionPercentage( Proc, Result)
|
||||
end
|
||||
|
||||
|
||||
-- TODO si può unificare con Sorting generale
|
||||
local function SortMachiningsBySegment( MachiningA, MachiningB)
|
||||
if MachiningA.nFeatureSegment > MachiningB.nFeatureSegment then
|
||||
return false
|
||||
|
||||
Reference in New Issue
Block a user