From ec48260d73a71d8638bee1a9bba034866690407a Mon Sep 17 00:00:00 2001 From: "andrea.villa" Date: Mon, 22 Apr 2024 09:04:34 +0200 Subject: [PATCH] In LapJoint : in IsTailFeature se LapJoint a 2 facce che taglia intera sezione, da fare dopo taglio di coda --- LuaLibs/ProcessLapJoint.lua | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/LuaLibs/ProcessLapJoint.lua b/LuaLibs/ProcessLapJoint.lua index e9e514f..63367ce 100644 --- a/LuaLibs/ProcessLapJoint.lua +++ b/LuaLibs/ProcessLapJoint.lua @@ -104,6 +104,7 @@ -- 2024/04/11 Aggiunta strategia SawPlusChain per lavorazione tasche con lama + sega a catena opzionale. Attivata con Q11. -- 2024/04/15 In SideMillAsSaw gestito anche rabbet -- 2024/04/17 In MakeMoreLongFaces corretto calcolo divisione in parti per evitare problemi di ceil con interi perfetti (ceil(3) = 3 o 4??) +-- 2024/04/22 In IsTailFeature se LapJoint a 2 facce che taglia intera sezione, deve essere fatto dopo taglio di coda -- Tabella per definizione modulo local ProcessLapJoint = {} @@ -732,6 +733,20 @@ function ProcessLapJoint.IsTailFeature( Proc, b3Raw) return true end end + + -- se interessa l'intera sezione + if BL.IsFeatureCuttingEntireSection( Proc.Box, b3Raw:getDimY(), b3Raw:getDimZ()) then + -- caso con due facce + if Proc.Fct == 2 then + -- verifico che il versore risultante delle normali delle due facce sia orientato verso X- + local vtResult = ( EgtSurfTmFacetNormVersor( Proc.Id, 0, GDB_ID.ROOT) + EgtSurfTmFacetNormVersor( Proc.Id, 1, GDB_ID.ROOT)) + vtResult:normalize() + if vtResult:getX() < 0.5 then + return true + end + end + end + -- in base al tipo di feature attribuisco il significato dei parametri Q AssignQIdent( Proc) -- se può essere fatto con utensile tipo lama