From 7b1585efc9c88d592fa27da0c53e7645b11ea9a5 Mon Sep 17 00:00:00 2001 From: DarioS Date: Sun, 1 Aug 2021 12:44:04 +0200 Subject: [PATCH] DataWall : - in FreeContour corretta gestione spigoli interni con lati inclinati - in FreeContour si disabilita pulitura spigoli su lati inclinati. --- LuaLibs/WProcessFreeContour.lua | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/LuaLibs/WProcessFreeContour.lua b/LuaLibs/WProcessFreeContour.lua index 6ea1414..09148ee 100644 --- a/LuaLibs/WProcessFreeContour.lua +++ b/LuaLibs/WProcessFreeContour.lua @@ -1,4 +1,4 @@ --- ProcessFreeContour.lua by Egaltech s.r.l. 2021/07/29 +-- ProcessFreeContour.lua by Egaltech s.r.l. 2021/01/08 -- Gestione calcolo profilo libero per Pareti -- Tabella per definizione modulo @@ -1234,8 +1234,9 @@ local function AddMillings( sMilling, vFace, Proc, nRawId, b3Raw, nConeCut, nAdd end end -- se lavorazione completa su faccia finale - if LastJ and vFace[LastJ].Type == 4 then - local OrigK = EgtIf( LastJ < #vFace, LastJ + 1, EgtIf( bClosed, 1, nil)) + local LastFace = ( LastJ or OrigI) + if vFace[LastFace].Type == 4 then + local OrigK = EgtIf( LastFace < #vFace, LastFace + 1, EgtIf( bClosed, 1, nil)) if OrigK and vFace[OrigK].PrevAng < -30 then dEal = -dMillDiam / 2 end @@ -1250,8 +1251,8 @@ local function AddMillings( sMilling, vFace, Proc, nRawId, b3Raw, nConeCut, nAdd dEal = -dMillDiam / 2 end end - -- se non devo scaricare l'angolo - if nConeCut <= 1 then + -- se non devo scaricare l'angolo o la faccia รจ inclinata + if nConeCut <= 1 or abs( vFace[OrigI].SideAng) > 0.1 then EgtSetMachiningGeometry( vGeom) EgtSetMachiningParam( MCH_MP.STARTADDLEN, dSal) EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal) @@ -1306,10 +1307,7 @@ local function AddMillings( sMilling, vFace, Proc, nRawId, b3Raw, nConeCut, nAdd EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal) -- percorso da non invertire EgtSetMachiningParam( MCH_MP.INVERT, false) - -- assegno utilizzo faccia - EgtSetMachiningParam( MCH_MP.FACEUSE, MCH_MILL_FU.PARAL_DOWN) -- assegno affondamento --- EgtSetMachiningParam( MCH_MP.DEPTH, dDepth) if bNotThrou then EgtSetMachiningParam( MCH_MP.DEPTH, ( dDepth - dOriDepth)) else