DataBeam :
- in Chamfer corretta giunzione tra lavorazioni successive per feature lunga - in FreeContour e RoundArch aggiunta gestione forzatura codolo centrale anzichè laterale - in LapJoint migliorata gestione lama con fessura e corretta gestione lato asseC per antischeggia con lama invertiti.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
-- ProcessChamfer.lua by Egaltech s.r.l. 2020/06/09
|
||||
-- ProcessChamfer.lua by Egaltech s.r.l. 2020/09/01
|
||||
-- Gestione calcolo profilo libero per Travi
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
@@ -80,11 +80,11 @@ function ProcessChamfer.Make( Proc, nPhase, nRawId, nPartId)
|
||||
EgtSetOperationMode( nMchId, false)
|
||||
return false, sErr
|
||||
end
|
||||
|
||||
-- altrimenti smusso standard
|
||||
else
|
||||
-- normale ed elevazione della faccia principale
|
||||
local ptC, vtN = EgtSurfTmFacetCenter( Proc.Id, 0, GDB_ID.ROOT)
|
||||
local _, dH, dV = EgtSurfTmFacetMinAreaRectangle( Proc.Id, 0, GDB_ID.ROOT)
|
||||
local _, dElev = BL.GetPointDirDepth( nPartId, ptC, vtN)
|
||||
local bFront = ( vtN:getY() < 0)
|
||||
-- limitazioni su inizio e fine derivanti da altre facce
|
||||
@@ -119,6 +119,9 @@ function ProcessChamfer.Make( Proc, nPhase, nRawId, nPartId)
|
||||
end
|
||||
-- determino numero di parti
|
||||
local dLen = Proc.Box:getDimX()
|
||||
-- calcolo la differenza tra lunghezza faccia 0 e lunghezza feature
|
||||
-- per far corrispondere i punti di inizio-fine delle lavorazioni multiple (a passi)
|
||||
local dAddLen = (( dH - dLen) / EgtIf( bLimXmax and bLimXmin , 2, 1))
|
||||
local dStartAccDist = BD.LONGCUT_ENDLEN
|
||||
local dEndAccDist = BD.LONGCUT_ENDLEN
|
||||
local nC = ceil( ( dLen - dStartAccDist - dEndAccDist) / BD.LONGCUT_MAXLEN)
|
||||
@@ -157,11 +160,11 @@ function ProcessChamfer.Make( Proc, nPhase, nRawId, nPartId)
|
||||
-- imposto attacchi e uscite
|
||||
local dSal, dEal
|
||||
if bFront then
|
||||
dSal = EgtIf( i == 1, dStartAll, -( i - 1) * dC)
|
||||
dEal = EgtIf( i == nC, dEndAll, -( nC - i) * dC)
|
||||
dSal = EgtIf( i == 1, dStartAll, -( i - 1) * dC - dAddLen + 0.5)
|
||||
dEal = EgtIf( i == nC, dEndAll, -( nC - i) * dC - dAddLen + 0.5)
|
||||
else
|
||||
dSal = EgtIf( i == nC, dStartAll, -( nC - i) * dC)
|
||||
dEal = EgtIf( i == 1, dEndAll, -( i - 1) * dC)
|
||||
dSal = EgtIf( i == nC, dStartAll, -( nC - i) * dC - dAddLen + 0.5)
|
||||
dEal = EgtIf( i == 1, dEndAll, -( i - 1) * dC - dAddLen + 0.5)
|
||||
end
|
||||
EgtSetMachiningParam( MCH_MP.STARTADDLEN, dSal)
|
||||
EgtSetMachiningParam( MCH_MP.LIPERP, dMillDiam / 4)
|
||||
|
||||
Reference in New Issue
Block a user