DataBeam :
- correzioni varie a Dovetail (1/2/3/4-138-X) - aggiunta gestione ingombro di testa e coda a TyroleanDovetail e Dovetail.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
-- ProcessTyroleanDovetail.lua by Egaltech s.r.l. 2020/04/23
|
||||
-- ProcessTyroleanDovetail.lua by Egaltech s.r.l. 2020/04/28
|
||||
-- Gestione calcolo giunzione tirolese
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
@@ -17,18 +17,7 @@ local BD = require( 'BeamData')
|
||||
local ML = require( 'MachiningLib')
|
||||
|
||||
-- variabili assegnazione parametri Q
|
||||
local sForceUseBlade = '' -- i
|
||||
local sDepthChamferMill = '' -- d
|
||||
local sPreemptiveChamfer = '' -- i
|
||||
local sUseMill = '' -- i
|
||||
local sUseRoughTool = '' -- i
|
||||
local sUseRoughToolWithBAxis90 = '' -- i
|
||||
local sUseRoughToolWithBAxis0 = '' -- i
|
||||
local sInsertBoreOnCorner = '' -- 1
|
||||
local sMakeContourWithSmallTool = '' -- i
|
||||
local sMakeOnlyContourOrFullPocket = '' -- i
|
||||
local sMakeBySideRoughTool = '' -- i
|
||||
local sAntisplintMode = '' -- i
|
||||
local sDepthChamferMill = '' -- d
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Riconoscimento della feature
|
||||
@@ -40,21 +29,10 @@ end
|
||||
local function AssignQValues( Proc)
|
||||
|
||||
-- reset delle variabili assegnazione parametri Q
|
||||
sForceUseBlade = ''
|
||||
sDepthChamferMill = ''
|
||||
sPreemptiveChamfer = ''
|
||||
sUseMill = ''
|
||||
sUseRoughTool = ''
|
||||
sUseRoughToolWithBAxis90 = ''
|
||||
sUseRoughToolWithBAxis0 = ''
|
||||
sInsertBoreOnCorner = ''
|
||||
sMakeContourWithSmallTool = ''
|
||||
sMakeOnlyContourOrFullPocket = ''
|
||||
sMakeBySideRoughTool = ''
|
||||
sAntisplintMode = ''
|
||||
sDepthChamferMill = ''
|
||||
|
||||
if Proc.Prc == 136 then
|
||||
sDepthChamferMill = 'Q01' -- d
|
||||
sDepthChamferMill = 'Q01' -- d
|
||||
end
|
||||
end
|
||||
|
||||
@@ -147,8 +125,6 @@ end
|
||||
---------------------------------------------------------------------
|
||||
local function EvaluateQParam( Proc, sDephtCham)
|
||||
local nChamfer = 0
|
||||
local bForceUseBlade = false
|
||||
local sErr
|
||||
-- verifico che lo smusso sia richiesto
|
||||
local dDepth = EgtGetInfo( Proc.Id, sDephtCham, 'd') or 0
|
||||
if dDepth > 0 then
|
||||
@@ -541,7 +517,7 @@ local function MakeMachByMill( Proc, nPhase, nRawId, nPartId, dOvmHead, b3Raw, b
|
||||
end
|
||||
-- verifico se sono presenti i parametri Q per la profondità smusso e
|
||||
-- per eseguire in esclusiva solo lo smusso
|
||||
local nChamfer, dDepthCham, sErrCham = EvaluateQParam( Proc, sDepthChamferMill)
|
||||
local nChamfer, dDepthCham = EvaluateQParam( Proc, sDepthChamferMill)
|
||||
-- dati della faccia
|
||||
local ptC, vtN = EgtSurfTmFacetCenter( Proc.Id, nFacInd, GDB_ID.ROOT)
|
||||
local rfFac, dH, dV = EgtSurfTmFacetMinAreaRectangle( Proc.Id, nFacInd, GDB_ID.ROOT)
|
||||
@@ -711,9 +687,20 @@ function ProcessTyroleanDovetail.Make( Proc, nPhase, nRawId, nPartId, dOvmHead)
|
||||
end
|
||||
-- se ho due facce allora è di testa
|
||||
if nFacetCnt == 2 then
|
||||
return MakeMachByBlade( Proc, nPhase, nRawId, nPartId, dOvmHead, b3Raw, b3Solid, nFacetCnt)
|
||||
local bOk, sErr = MakeMachByBlade( Proc, nPhase, nRawId, nPartId, dOvmHead, b3Raw, b3Solid, nFacetCnt)
|
||||
if not bOk then return bOk, sErr end
|
||||
else
|
||||
return MakeMachByMill( Proc, nPhase, nRawId, nPartId, dOvmHead, b3Raw, b3Solid, nFacetCnt)
|
||||
local bOk, sErr = MakeMachByMill( Proc, nPhase, nRawId, nPartId, dOvmHead, b3Raw, b3Solid, nFacetCnt)
|
||||
if not bOk then return bOk, sErr end
|
||||
end
|
||||
|
||||
-- aggiornamento ingombro di testa o coda
|
||||
if Proc.Head then
|
||||
local dHCI = b3Solid:getMax():getX() - Proc.Box:getMin():getX()
|
||||
BL.UpdateHCING( nRawId, dHCI)
|
||||
elseif Proc.Tail then
|
||||
local dTCI = Proc.Box:getMax():getX() - b3Solid:getMin():getX()
|
||||
BL.UpdateTCING( nRawId, dTCI)
|
||||
end
|
||||
|
||||
return true
|
||||
|
||||
Reference in New Issue
Block a user