diff --git a/LuaLibs/FeatureLib.lua b/LuaLibs/FeatureLib.lua index 0a3f09d..ae6e484 100644 --- a/LuaLibs/FeatureLib.lua +++ b/LuaLibs/FeatureLib.lua @@ -267,6 +267,9 @@ function FeatureLib.GetAdditionalInfo( Proc, Part) -- se mortasa a coda di rondine o mortasa frontale a coda di rondine elseif ID.IsMortise( Proc) or ID.IsFrontMortise( Proc) then Proc.FeatureInfo = FeatureLib.GetMortiseData( Proc, Part) + elseif ID.IsRidgeLap( Proc) then + Proc.AdjacencyMatrix = FaceData.GetAdjacencyMatrix( Proc) + Proc.Faces = FaceData.GetFacesInfo( Proc, Part) end return Proc diff --git a/Strategies/Standard/STR0012/STR0012.lua b/Strategies/Standard/STR0012/STR0012.lua index 3b4b89f..26bbf26 100644 --- a/Strategies/Standard/STR0012/STR0012.lua +++ b/Strategies/Standard/STR0012/STR0012.lua @@ -15,6 +15,7 @@ local BladeToWaste = require( 'BLADETOWASTE') local STR0012 = {} local Strategy = {} local RidgeLap = {} +RidgeLap.Result = {} ------------------------------------------------------------------------------------------------------------- function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) @@ -26,6 +27,10 @@ function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) Strategy.Result = {} Strategy.Result.sInfo = '' RidgeLap.Result = {} + local TwoFaces = {} + local AddedFace = {} + TwoFaces.Result = {} + AddedFace.Result = {} local dTimeToMachine = 0 local dMRRBlade = 0 local dCompletionPercentage = 0 @@ -88,7 +93,7 @@ function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) bSaveAddedGeometries = bAddMachining, dExtendAfterTail = dExtendAfterTail } - RidgeLap.Result, BladeToWasteResult = BladeToWaste.Make( Proc, Part, OptionalParameters) + TwoFaces.Result, BladeToWasteResult = BladeToWaste.Make( Proc, Part, OptionalParameters) dTimeToMachine = BladeToWasteResult.dTimeToMachine dMRRBlade = BladeToWasteResult.dMRR dCompletionPercentage = BladeToWasteResult.dCompletionPercentage @@ -114,7 +119,7 @@ function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) bSaveAddedGeometries = bAddMachining, dExtendAfterTail = dExtendAfterTail } - RidgeLap.Result, BladeToWasteResult = BladeToWaste.Make( idAddedTmFace, Part, OptionalParameters) + AddedFace.Result, BladeToWasteResult = BladeToWaste.Make( idAddedTmFace, Part, OptionalParameters) -- TODO calcolo risultati da aggiornare con funzioni nuove dMRRBladeAddedFace = BladeToWasteResult.dMRR @@ -128,6 +133,14 @@ function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) nQuality = 2/3 * nQuality + 1/3 * nQualityAddedFace end + -- lavorazioni in lista unica + for i = 1, #AddedFace.Result do + table.insert( RidgeLap.Result, AddedFace.Result[i]) + end + for i = 1, #TwoFaces.Result do + table.insert( RidgeLap.Result, TwoFaces.Result[i]) + end + -- aggiunta lavorazioni local nIsApplicableCount = 0 local bAreAllMachiningsAdded = true @@ -151,13 +164,15 @@ function STR0012.Make( bAddMachining, Proc, Part, CustomParameters) else Strategy.Result.sStatus = 'Not-Completed' end + Strategy.Result.nCompletionIndex = FeatureLib.GetFeatureCompletionIndex( dCompletionPercentage) + Strategy.Result.nQuality = nQuality + Strategy.Result.dTimeToMachine = dTimeToMachine + Strategy.Result.dMRR = dMRRBlade else Strategy.Result.sStatus = 'Not-Applicable' + Strategy.Result = FeatureLib.GetStrategyResultNotApplicable() end - Strategy.Result.nCompletionIndex = FeatureLib.GetFeatureCompletionIndex( dCompletionPercentage) - Strategy.Result.nQuality = nQuality - Strategy.Result.dTimeToMachine = dTimeToMachine - Strategy.Result.dMRR = dMRRBlade + return bAreAllMachiningsAdded, Strategy.Result end