From a5d606b22547267056c7aa4bf98e536af1d90c7d Mon Sep 17 00:00:00 2001 From: "andrea.villa" Date: Tue, 19 May 2026 13:05:15 +0200 Subject: [PATCH] Prima versione gestione utensile flottante. Per ora solo su marcature. Gestione da migliorare. --- LuaLibs/BeamExec.lua | 5 +++++ Strategies/Standard/STR0014/STR0014.lua | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/LuaLibs/BeamExec.lua b/LuaLibs/BeamExec.lua index c5602fe..7c3dbec 100644 --- a/LuaLibs/BeamExec.lua +++ b/LuaLibs/BeamExec.lua @@ -153,6 +153,11 @@ function BeamExec.GetToolsFromDB() Tool.nDouble = EgtGetValInNotes( Tool.sUserNotes, 'DOUBLE', 'd') Tool.bIsProfiledTool = not EgtTdbIsCurrToolStandardDraw() + -- TODO per capire se ToolHolder รจ flottante bisogna leggere nota TYPE='Float' su ToolHolder. Serve funzione + -- info per utensile su ToolHolder flottante + Tool.dOverHang = EgtGetValInNotes( Tool.sUserNotes, 'TOOL_OVERHANG', 'd') or 0 + Tool.bToolOnFloatingTH = Tool.dOverHang > 0 + -- lettura parametri non comuni ( famiglia DRILLBIT non ha parametri specifici) if sToolFamily ~= 'DRILLBIT' then Tool.dThickness = EgtTdbGetCurrToolParam( MCH_TP.THICK) diff --git a/Strategies/Standard/STR0014/STR0014.lua b/Strategies/Standard/STR0014/STR0014.lua index 11c0f8e..8f5c9cf 100644 --- a/Strategies/Standard/STR0014/STR0014.lua +++ b/Strategies/Standard/STR0014/STR0014.lua @@ -98,7 +98,7 @@ function STR0014.Make( bAddMachining, Proc, Part, CustomParameters) Strategy.Machining.nSCC = GetSCC( Strategy.Machining) Strategy.Machining.nType = MCH_MY.MILLING - Strategy.Machining.sDepth = EgtClamp( Strategy.Parameters.dMachiningDepth, -1, 5) + Strategy.Machining.sDepth = EgtClamp( Strategy.Parameters.dMachiningDepth, -1, TOOLS[Strategy.Machining.nToolIndex].dMaxMaterial) Strategy.Machining.nWorkside = MCH_MILL_WS.CENTER -- LeadIn / LeadOut @@ -113,6 +113,12 @@ function STR0014.Make( bAddMachining, Proc, Part, CustomParameters) Strategy.Machining.LeadOut.dEndAddLength = -20 end + -- TODO gestire meglio + -- se utensile montato su aggregato flottante + if TOOLS[Strategy.Machining.nToolIndex].bToolOnFloatingTH then + Strategy.Machining.dMaxElev = Strategy.Parameters.dMachiningDepth + Strategy.Machining.dLongitudinalOffset = -5 + end -- stessi parametri cambia solo al geometria for i = 1, #Proc.FeatureInfo.AdditionalGeometries do local AuxId = Proc.id + Proc.FeatureInfo.AdditionalGeometries[i]