DataBeam 2.5i2 :
- aggiunta cancellazione curve temporanee da loop di facce in BeamLib.Is3EdgesApprox - piccola modifica per Turn su bInvert di FacesBySaw.MakeOne - in foratura quando errore in applicazione lavorazione si inverte e riprova solo se singola su foro aperto - in MakeLongMoreFaces migliorata gestione spezzatura di Tunnel - in lavorazione tenoni per Turn si assegna SCC per privilegiare accesso dal lato corto della trave.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
-- ProcessLapJoint.lua by Egaltech s.r.l. 2023/08/10
|
||||
-- ProcessLapJoint.lua by Egaltech s.r.l. 2023/09/26
|
||||
-- Gestione calcolo mezzo-legno per Travi
|
||||
-- 2019/10/08 Agg. gestione OpenPocket.
|
||||
-- 2021/01/24 Con sega a catena ora sempre impostato asse A.
|
||||
@@ -74,6 +74,7 @@
|
||||
-- 2023/08/02 Corretto incremento della profondità pari al raggio utensile per tunnel con sega a catena.
|
||||
-- 2023/08/10 Modificata scelta SCC per tasche in Y+/- in coda o quasi (anche per relativi antischeggia con lama).
|
||||
-- 2023/09/12 In MakeByPockets gestito correttamente il ritorno nil di GetUShapeWidth.
|
||||
-- 2023/09/26 In MakeLongMoreFaces migliorata gestione spezzatura di Tunnel.
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local ProcessLapJoint = {}
|
||||
@@ -5568,7 +5569,7 @@ local function MakeLongMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead)
|
||||
end
|
||||
-- verifico se applicare gestione speciale per tunnel
|
||||
local nSurfBottomId
|
||||
if Proc.Topology == 'Tunnel' and Proc.AffectedFaces.Front then
|
||||
if Proc.Topology == 'Tunnel' then
|
||||
bAddEndCapLeftSide = true
|
||||
bAddEndCapRightSide = true
|
||||
-- recupero centro e normale delle facce
|
||||
@@ -5585,9 +5586,12 @@ local function MakeLongMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead)
|
||||
if Proc.Fct >= 3 then
|
||||
vtOrtho = vtN[1] ^ vtN[3]
|
||||
else
|
||||
return 0, 0, 0
|
||||
local sErr = 'Error : disconnected tunnel'
|
||||
EgtOutLog( sErr)
|
||||
return false, sErr
|
||||
end
|
||||
end
|
||||
vtOrtho = EgtIf( abs( vtOrtho:getY()) > abs( vtOrtho:getZ()), -Y_AX(), -Z_AX())
|
||||
local ptMaxBox = Proc.Box:getMax()
|
||||
-- per creare le superfici di cap nei tunnel serve aggiungere una faccia di fondo
|
||||
-- recupero il box della trave e lo ingrandisco di poco per essere sicuro di avere intersezione con il piano di fondo
|
||||
@@ -5596,7 +5600,7 @@ local function MakeLongMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead)
|
||||
-- superficie di fondo
|
||||
nSurfBottomId = EgtSurfTmPlaneInBBox( nAddGrpId, ptMaxBox, vtOrtho, b3SolidExtended, GDB_ID.ROOT)
|
||||
-- calcolo di quanto allargare le superfici
|
||||
local dWidth = b3Raw:getDimY()
|
||||
local dWidth = EgtIf( Proc.AffectedFaces.Front, Proc.Box:getDimZ(), Proc.Box:getDimY())
|
||||
dAddLen = min( dWidth, 100) / 2
|
||||
end
|
||||
-- la divido in parti lungo X
|
||||
@@ -5649,7 +5653,8 @@ local function MakeLongMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead)
|
||||
end
|
||||
if i < nPart then
|
||||
-- definizione del piano destro
|
||||
local ptOn = Point3d( Xmin + i * dPartLen, 0, 0)
|
||||
local dAdd = EgtIf( i < nPart, dAddLen, 0)
|
||||
local ptOn = Point3d( Xmin + dAdd + i * dPartLen, 0, 0)
|
||||
local vtN = X_AX()
|
||||
-- taglio della superficie lato destro
|
||||
EgtCutSurfTmPlane( AddId, ptOn, vtN, true, GDB_RT.GLOB)
|
||||
|
||||
Reference in New Issue
Block a user