diff --git a/LuaLibs/ProcessStepJointNotch.lua b/LuaLibs/ProcessStepJointNotch.lua index 7c08571..12a391b 100644 --- a/LuaLibs/ProcessStepJointNotch.lua +++ b/LuaLibs/ProcessStepJointNotch.lua @@ -1,4 +1,4 @@ --- ProcessStepJointNotch.lua by Egaltech s.r.l. 2020/03/19 +-- ProcessStepJointNotch.lua by Egaltech s.r.l. 2020/04/25 -- Gestione calcolo tacca a gradino per Travi -- Tabella per definizione modulo @@ -206,9 +206,9 @@ local function MachineByMill( Proc, nPhase, nRawId, nPartId, b3Solid, ptC, vtN, return bOk, sErr end -- se angolo tra le facce maggiore di 90, inserisco la contornatura o svuotatura del lato più corto - if ( 180 + dAng) > 90.1 then - -- se la normale della faccia corta si discosta dalla trave di più di 30 gradi utilizzo la svutatura altrimenti la contornatura - if abs( vtN[nSmaInd]:getX()) < 0.866 then -- se si discosta di più di 30° applico svuotatura + if dAng > -90.1 then + -- se la normale della faccia corta si discosta dalla trave di più di 40° utilizzo la svuotatura altrimenti la contornatura + if abs( vtN[nSmaInd]:getX()) < 0.766 then -- applico la svuotatura local bOk, sErr = MakePocket( Proc, nPartId, ptPs, vtN, nSmaInd, nDiffWidth, sMchFind, nUseRoughTool, tBHx) if not bOk then @@ -311,9 +311,6 @@ local function MakeTwoFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, nDiffWidth local vtN = {} ptC[1], vtN[1] = EgtSurfTmFacetCenter( Proc.Id, 0, GDB_ID.ROOT) ptC[2], vtN[2] = EgtSurfTmFacetCenter( Proc.Id, 1, GDB_ID.ROOT) - -- normale media per capire se taglio di testa o di coda - local vtNm = ( vtN[1] + vtN[2]) ; vtNm:normalize() - local bHead = ( vtNm:getX() > 0) -- angolo diedro local bAdj, ptP1, ptP2, dAng = EgtSurfTmFacetsContact( Proc.Id, 0, 1, GDB_ID.ROOT) local bOnY = true @@ -338,7 +335,7 @@ local function MakeTwoFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, nDiffWidth -- se feature non è larga come trave o è selezionato l'utilizzo del truciolatore utilizzo svuotatura if nDiffWidth > 0 or nUseRoughTool == 1 then -- se angolo compreso è >= di 90° applico svuotatura con fresa - if not bConvex and ( 180 + dAng) >= 90 then + if not bConvex and dAng >= -90.1 then local bOk, sErr = MachineByMill( Proc, nPhase, nRawId, nPartId, b3Solid, ptC, vtN, nBigInd, nSmaInd, ptPs, tBHx, b3Raw, nDiffWidth, nUseRoughTool, dAng) if not bOk then return bOk, sErr