From bf454d6c0f4cf9d8b2bb379dbc8a7c750fa9020b Mon Sep 17 00:00:00 2001 From: DarioS Date: Fri, 3 Mar 2023 12:23:12 +0100 Subject: [PATCH] DataBeam 2.5c1 : - in FreeContour corretta gestione Mark (crash per box non definiti). --- LuaLibs/ProcessFreeContour.lua | 11 +++++++---- Version.lua | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/LuaLibs/ProcessFreeContour.lua b/LuaLibs/ProcessFreeContour.lua index 9352d5c..d56a7eb 100644 --- a/LuaLibs/ProcessFreeContour.lua +++ b/LuaLibs/ProcessFreeContour.lua @@ -1,4 +1,4 @@ --- ProcessFreeContour.lua by Egaltech s.r.l. 2022/11/03 +-- ProcessFreeContour.lua by Egaltech s.r.l. 2023/03/03 -- Gestione calcolo profilo libero per Travi -- 2022/08/23 Aggiunta la funzione MakeByMark per la gestione del caso P13=10 -- 2022/09/21 In MakeByMill aggiunto messaggio per elevazione non raggiunta. @@ -6,7 +6,7 @@ -- 2022/11/09 Aggiunta la gestione della chiamata della FreeContour da parte della SimpleScarf. -- 2022/11/24 In MakeByMill aggiunta la lavorazione sopra/sotto nel caso di testa sotto -- In MakeByMill se BeamData forza lettura codolo da Q questo viene sempre fatto indipendentemente dalle dimensioni della feature - +-- 2023/03/03 Corretta MakeByMark ( non definiti b3Raw e b3Aux ). -- Tabella per definizione modulo local ProcessFreeContour = {} @@ -782,7 +782,9 @@ local function MakeByPocket( Proc, nPhase, nRawId, nPartId, dOvmHead) end --------------------------------------------------------------------- -local function MakeByMark( Proc, nRawId, b3Raw, nPartId) +local function MakeByMark( Proc, nRawId, nPartId) + -- ingombro del grezzo + local b3Raw = EgtGetRawPartBBox( nRawId) -- ingombro del pezzo local Ls = EgtGetFirstNameInGroup( nPartId, 'Box') local b3Solid = EgtGetBBoxGlob( Ls or GDB_ID.NULL, GDB_BB.STANDARD) @@ -802,6 +804,7 @@ local function MakeByMark( Proc, nRawId, b3Raw, nPartId) -- recupero i dati della curva e del profilo local dDepth = abs( EgtCurveThickness( AuxId)) local vtExtr = EgtCurveExtrusion( AuxId, GDB_RT.GLOB) + local b3Aux = EgtGetBBoxGlob( AuxId, GDB_BB.STANDARD) local bToolInv = ( vtExtr:getZ() < -0.1 and b3Aux:getDimZ() > b3Raw:getDimZ() - 5) -- verifico che la marcatura non sia orientata verso il basso (-5 deg) if vtExtr:getZ() < - 0.1 and not BD.DOWN_HEAD and not BD.TURN then @@ -870,7 +873,7 @@ function ProcessFreeContour.Make( Proc, nPhase, nRawId, nPartId, dOvmHead) local nCntType = EgtGetInfo( Proc.Id, 'CNT_TYPE', 'i') or 0 -- se marcatura if nCntType == 10 then - return MakeByMark( Proc, nRawId, b3Raw, nPartId) + return MakeByMark( Proc, nRawId, nPartId) -- se fresatura else return MakeByMill( Proc, nPhase, nRawId, nPartId, dOvmHead) diff --git a/Version.lua b/Version.lua index 176c46e..b175327 100644 --- a/Version.lua +++ b/Version.lua @@ -1,4 +1,4 @@ --- Version.lua by Egaltech s.r.l. 2023/02/27 +-- Version.lua by Egaltech s.r.l. 2023/03/03 -- Gestione della versione di Beam -VERSION = '2.5b3' +VERSION = '2.5c1'