From b882f23d3e409c68678c5706455d0d2cfd117c6b Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Tue, 24 Dec 2024 08:44:46 +0100 Subject: [PATCH] - commenti --- LuaLibs/BeamLib.lua | 5 ++++- LuaLibs/MachiningLib.lua | 4 +++- Strategies/Standard/STR0002/STR0002.lua | 1 + Strategies/Standard/STR0004/STR0004.lua | 1 + 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/LuaLibs/BeamLib.lua b/LuaLibs/BeamLib.lua index bcc83e4..d266227 100644 --- a/LuaLibs/BeamLib.lua +++ b/LuaLibs/BeamLib.lua @@ -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 diff --git a/LuaLibs/MachiningLib.lua b/LuaLibs/MachiningLib.lua index c823a4f..50a55c1 100644 --- a/LuaLibs/MachiningLib.lua +++ b/LuaLibs/MachiningLib.lua @@ -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 diff --git a/Strategies/Standard/STR0002/STR0002.lua b/Strategies/Standard/STR0002/STR0002.lua index 2741a59..4981303 100644 --- a/Strategies/Standard/STR0002/STR0002.lua +++ b/Strategies/Standard/STR0002/STR0002.lua @@ -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 diff --git a/Strategies/Standard/STR0004/STR0004.lua b/Strategies/Standard/STR0004/STR0004.lua index a48aea2..9c9429e 100644 --- a/Strategies/Standard/STR0004/STR0004.lua +++ b/Strategies/Standard/STR0004/STR0004.lua @@ -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