DataBeam :
- in LapJoint migliorata gestione se di coda (Tail) - in LapJoint svuotature con 1 solo lato aperto possono avere diametro limitato anche da BeamData.lua di macchina (BD.MAXDIAM_POCK_1_OPEN).
This commit is contained in:
@@ -611,8 +611,11 @@ function ProcessLapJoint.IsTailFeature( Proc, b3Raw)
|
||||
Proc.HeadDir = bHeadDir
|
||||
return not bHead
|
||||
end
|
||||
-- recupero box del pezzo
|
||||
local nPartId = EgtGetParent( EgtGetParent( Proc.Id) or GDB_ID.NULL)
|
||||
local b3Solid = EgtGetBBoxGlob( EgtGetFirstNameInGroup( nPartId, 'Box') or GDB_ID.NULL, GDB_BB.STANDARD)
|
||||
-- verifico se è in coda
|
||||
local dEndDist = Proc.Box:getMin():getX() - b3Raw:getMin():getX()
|
||||
local dEndDist = Proc.Box:getMin():getX() - b3Solid:getMin():getX()
|
||||
if dEndDist > BD.MAX_DIST_HTFEA then
|
||||
return false
|
||||
end
|
||||
@@ -620,11 +623,8 @@ function ProcessLapJoint.IsTailFeature( Proc, b3Raw)
|
||||
if Proc.Box:getDimX() > min( BD.MAX_LEN_HTFEA, 0.6 * b3Raw:getDimX()) then
|
||||
return false
|
||||
end
|
||||
-- recupero identificativo del pezzo
|
||||
local nPartId = EgtGetParent( EgtGetParent( Proc.Id) or GDB_ID.NULL)
|
||||
-- se una o due facce e interessa veramente la coda, allora di coda
|
||||
if Proc.Fct <= 2 then
|
||||
local b3Solid = EgtGetBBoxGlob( EgtGetFirstNameInGroup( nPartId, 'Box') or GDB_ID.NULL, GDB_BB.STANDARD)
|
||||
if Proc.Box:getMin():getX() < b3Solid:getMin():getX() + 1. then
|
||||
return true
|
||||
elseif Proc.Box:getMin():getX() > b3Solid:getMin():getX() + 5. then
|
||||
@@ -4751,13 +4751,18 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, dOvmHead, bSinglePa
|
||||
-- settaggio voluto da Alessandro/Fabio (per fare angoli con fresa piccola)
|
||||
sMchFind = 'Pocket'
|
||||
local dDiam = min( dH, dV)
|
||||
if ( Proc.Fct == 1) or ( Proc.Fct == 2 and bIsL) or ((( Proc.Fct == 3 and bIsU) or Proc.Fct == 4) and bSinglePart) then
|
||||
local bTailOnSide = ( Proc.Box:getMin():getX() - b3Solid:getMin():getX() < 0.1 and not Proc.Tail)
|
||||
if ( Proc.Fct == 1) or ( Proc.Fct == 2 and bIsL) or ((( Proc.Fct == 3 and bIsU) or ( Proc.Fct == 4 and not bTailOnSide)) and bSinglePart) then
|
||||
sMchFind = 'OpenPocket'
|
||||
if bIsU then
|
||||
dDiam = GetUShapeWidth( Proc, nFacInd) or dDiam
|
||||
elseif Proc.Fct == 4 then
|
||||
-- premio utensile diam 25 per rifinire gli angoli
|
||||
if dDiam > 60 then dDiam = 0.5 * dDiam end
|
||||
-- per rifinire gli angoli premio utensile diam 25 o da BD
|
||||
if not BD.MAXDIAM_POCK_1_OPEN then
|
||||
dDiam = min( dDiam, 30)
|
||||
else
|
||||
dDiam = min( dDiam, BD.MAXDIAM_POCK_1_OPEN)
|
||||
end
|
||||
else
|
||||
dDiam = 300
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user