From 4a8576bcb2cc6e4783bded61a2fd84c1657e0efe Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Thu, 29 Feb 2024 17:52:40 +0100 Subject: [PATCH 1/3] update log e version --- UpdateLog.txt | 8 ++++++++ Version.lua | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/UpdateLog.txt b/UpdateLog.txt index 8eedcb5..24b9f23 100644 --- a/UpdateLog.txt +++ b/UpdateLog.txt @@ -1,5 +1,13 @@ ==== Beam Update Log ==== +Versione 2.6c1 (29/02/2024) +- Modif : in FacesBySaw e LapJoint migliorato calcolo area non pinzabile in testa HCING e coda TCING +- Modif : vari miglioramenti all'ordinamento delle lavorazioni +- Modif : in Mortise forzata SPIRAL_IN se c'รจ almeno un lato aperto +- Modif : in tenone a coda di rondine aumentato a 8 il numero massimo di passate (era 6) +- Modif : in lapjoint a due facce migliorata la scelta della lama da sotto +- Fixed : in LapJoint corretto bug che impediva l'esecuzione della lavorazion con antischeggia attivo + Versione 2.6b1 (14/02/2024) - Fixed : corretto bug in Split in cui si chiamava la EgtSurfTmFacetNormVersor senza riferimento - Fixed : in L20 corretta gestione 2 facce diff --git a/Version.lua b/Version.lua index bab2abf..e53d7de 100644 --- a/Version.lua +++ b/Version.lua @@ -2,5 +2,5 @@ -- Gestione della versione di Beam NAME = 'Beam' -VERSION = '2.6b1' +VERSION = '2.6c1' MIN_EXE = '2.6a1' From 604ffc6a35c20c3b2eebe7e3e77a0d32ce51929a Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Fri, 1 Mar 2024 15:58:57 +0100 Subject: [PATCH 2/3] - in LapJoint migliorata ricerca pocket (VerifyPocket) --- LuaLibs/FeatureTopology.lua | 1 + LuaLibs/MachiningLib.lua | 5 +++-- LuaLibs/ProcessLapJoint.lua | 7 ++----- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/LuaLibs/FeatureTopology.lua b/LuaLibs/FeatureTopology.lua index da56d5c..f4ee53a 100644 --- a/LuaLibs/FeatureTopology.lua +++ b/LuaLibs/FeatureTopology.lua @@ -214,6 +214,7 @@ function FeatureTopology.Classify( Proc, b3Raw) elseif Proc.Fct == 2 and bAllAnglesConcave and ( Proc.AffectedFaces.Left or Proc.AffectedFaces.Right) and ( Proc.AffectedFaces.Front or Proc.AffectedFaces.Back) then sFamily = 'Rabbet' bIsThrough = true + -- birdsmouth elseif Proc.Fct == 2 and bAllAnglesConcave then sFamily = 'Groove' bIsThrough = true diff --git a/LuaLibs/MachiningLib.lua b/LuaLibs/MachiningLib.lua index b63ce3d..89c9b1c 100644 --- a/LuaLibs/MachiningLib.lua +++ b/LuaLibs/MachiningLib.lua @@ -12,6 +12,7 @@ -- 2024/01/19 In FindSawing aggiunto parametro opzionale bConsiderCSimmEncumberance per considerare l'ingombro dell'asse C nel massimo materiale (default false). -- 2024/01/23 Nella GetMachinings vengono ora raccolti i parametri utensile necessari per i VerifyTool, scritti direttamente nella tabella Machining.Tool. -- Le lavorazioni possono essere ora ordinate per dimensioni utensile (Longest, Shortest, Biggest, Smallest) se passato l'apposito parametro SortingCriterion in FindMachining. Al momento implementato solo per FindSawing. +-- 2024/03/01 In VerifyPocketing implementato l'ordinamento per dimensioni utensile. -- Tabella per definizione modulo local MachiningLib = {} @@ -490,8 +491,8 @@ function MachiningLib.FindMilling( sType, dDepth, sTuuidMstr, dMaxDiam, dMaxTotL end --------------------------------------------------------------------- -function MachiningLib.FindPocketing( sType, dMaxDiam, dDepth, dMaxTotLen, bTopHead, bDownHead, bExcludeH2, bExcludeH3) - return FindMachining( MCH_MY.POCKETING, sType, { MaxDiam = dMaxDiam, Depth = dDepth, MaxTotLen = dMaxTotLen}, bTopHead, bDownHead, bExcludeH2, bExcludeH3) +function MachiningLib.FindPocketing( sType, dMaxDiam, dDepth, dMaxTotLen, bTopHead, bDownHead, bExcludeH2, bExcludeH3, sSortingCriterion) + return FindMachining( MCH_MY.POCKETING, sType, { MaxDiam = dMaxDiam, Depth = dDepth, MaxTotLen = dMaxTotLen}, bTopHead, bDownHead, bExcludeH2, bExcludeH3, sSortingCriterion) end --------------------------------------------------------------------- diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index 274f21a..79a5e62 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -97,6 +97,7 @@ -- Rimosso un caso di controllo per HCING/TCING -- 2024/02/29 In MakeMoreFaces passato b3Solid alla funzione ManageAntiSplintByMill -- 2024/02/29 In lapjoint 2 facce (TestTwoFacesDownHead) migliorata la scelta della lama da sotto. +-- 2024/03/01 Migliorata VerifyPocket. -- Tabella per definizione modulo local ProcessLapJoint = {} @@ -366,11 +367,7 @@ local function VerifyPocket( Proc, dDiam, dDepth, dMaxTotLen, sMchFindMaster, bP local sPocketing if dDepth then sPocketing = ML.FindPocketing( sMchFind, dDiam, dDepth, dMaxTotLen, bPocketUp, bPocketDown) or - ML.FindPocketing( sMchFind, dDiam, 0.8 * dDepth, dMaxTotLen, bPocketUp, bPocketDown) or - ML.FindPocketing( sMchFind, dDiam, 0.7 * dDepth, dMaxTotLen, bPocketUp, bPocketDown) or - ML.FindPocketing( sMchFind, dDiam, 0.6 * dDepth, dMaxTotLen, bPocketUp, bPocketDown) or - ML.FindPocketing( sMchFind, dDiam, 0.5 * dDepth, dMaxTotLen, bPocketUp, bPocketDown) or - ML.FindPocketing( sMchFind, dDiam, 0.4 * dDepth, dMaxTotLen, bPocketUp, bPocketDown) or + ML.FindPocketing( sMchFind, dDiam, 0, dMaxTotLen, bPocketUp, bPocketDown, nil, nil, 'Longest') or ML.FindPocketing( sMchFind, dDiam, 0, dMaxTotLen) else sPocketing = ML.FindPocketing( sMchFind, dDiam, 0, dMaxTotLen) From eb401d269538e98cfa2294234f6e874787347270 Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Mon, 4 Mar 2024 09:48:47 +0100 Subject: [PATCH 3/3] - Implementato attacco esterno se tasca 4 facce sulla coda ma nessun pezzo successivo --- LuaLibs/ProcessLapJoint.lua | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index 79a5e62..089f3d8 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -98,6 +98,7 @@ -- 2024/02/29 In MakeMoreFaces passato b3Solid alla funzione ManageAntiSplintByMill -- 2024/02/29 In lapjoint 2 facce (TestTwoFacesDownHead) migliorata la scelta della lama da sotto. -- 2024/03/01 Migliorata VerifyPocket. +-- 2024/03/04 Implementato attacco esterno se tasca 4 facce sulla coda ma nessun pezzo successivo. -- Tabella per definizione modulo local ProcessLapJoint = {} @@ -5044,7 +5045,7 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa local bMillUp = ( BD.DOWN_HEAD and vtN:getZ() > -0.259) local bMillDown = ( BD.DOWN_HEAD and vtN:getZ() < 0.342) -- settaggio voluto da Alessandro/Fabio (per fare angoli con fresa piccola) - sMchFind = 'Pocket' + local sMchFind = 'Pocket' local dDiam = min( dH, dV) local bTailOnSide = ( Proc.Box:getMin():getX() - b3Solid:getMin():getX() < 0.1 and not Proc.Tail and not bAllWithEndCap) if ( Proc.Fct == 1) or (( Proc.Fct == 2 or Proc.Fct == 3) and bIsL) or ((( Proc.Fct == 3 and bIsU) or ( Proc.Fct == 4 and not bTailOnSide)) and bSinglePart) then @@ -5536,6 +5537,11 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa dMachiningDepth = dFacElev + dCollSic end local bOk, sWarn2 + local dDistToNextPiece = BL.GetDistanceToNextPart( nRawId, nPhase) + -- se avevo escluso l'attacco da fuori per non rovinare il pezzo successivo, riverifico con il diametro fresa effettivo + if ( Proc.Fct == 4 and bTailOnSide) and ( dDistToNextPiece > dToolDiameter + 10 * GEO.EPS_SMALL) then + sMchFind = EgtIf( bMillDown, 'OpenPocket_H2', 'OpenPocket') + end bOk, sWarn2, sTuuidPk, dDiamTool = MakePocket( Proc, nPartId, b3Solid, ptC, tvtNx, nFacInd, sMchFind, nUseRoughTool, sPocketing, dMachiningDepth, nil, nil, bAllWithEndCap, bLapJointAngTrasm, nPhase, nRawId) if not bOk then return false, sWarn2 end if sWarn2 then