DataBeam :

- altre migliorie a LapJoint e LongCut.
This commit is contained in:
Dario Sassi
2019-09-30 10:45:50 +00:00
parent c77d77ad92
commit a4ce17b068
2 changed files with 15 additions and 8 deletions
+10 -3
View File
@@ -83,10 +83,13 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId)
dToolDiam = EgtTdbGetCurrToolParam( MCH_TP.DIAM) or dToolDiam
end
end
-- determino se lavorazione da davanti o da dietro
local bFront = ( vtN:getY() < 0)
-- determino gli estremi
local dStartDist = 0
local dStartAccDist = BD.LONGCUT_ENDLEN
local bStartFixed = true
if ( bLimXmin and vtN:getY() < 0) or ( bLimXmax and vtN:getY() > 0) then
if ( bLimXmin and bFront) or ( bLimXmax and not bFront) then
dStartDist = dToolDiam / 2
dStartAccDist = BD.LONGCUT_MAXLEN
bStartFixed = false
@@ -94,7 +97,7 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId)
local dEndDist = 0
local dEndAccDist = BD.LONGCUT_ENDLEN
local bEndFixed = true
if ( bLimXmin and vtN:getY() > 0) or ( bLimXmax and vtN:getY()< 0) then
if ( bLimXmin and not bFront) or ( bLimXmax and bFront) then
dEndDist = dToolDiam / 2
dEndAccDist = BD.LONGCUT_MAXLEN
bEndFixed = false
@@ -136,6 +139,8 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId)
dEndAccDist = 0
end
end
-- determino l'utilizzo della faccia
local nFaceUse = EgtIf( abs( vtN:getY()) > 0.01, MCH_MILL_FU.ORTHO_DOWN, EgtIf( bFront, MCH_MILL_FU.ORTHO_FRONT, MCH_MILL_FU.ORTHO_BACK))
-- si percorre il lato basso della faccia
local nM = 0
for i = 1, nC do
@@ -166,11 +171,13 @@ function ProcessLongCut.Make( Proc, nPhase, nRawId, nPartId)
local dEal = EgtIf( i == nC, -dEndDist, - dEndAccDist - ( nC - i - 1) * dC)
EgtSetMachiningParam( MCH_MP.ENDADDLEN, dEal)
-- imposto offset radiale (nullo se concavo)
if k >1 then
if k > 1 then
EgtSetMachiningParam( MCH_MP.OFFSR, ( k - 1) * dStep)
else
EgtSetMachiningParam( MCH_MP.OFFSR, - BD.CUT_EXTRA)
end
-- imposto uso della faccia
EgtSetMachiningParam( MCH_MP.FACEUSE, nFaceUse)
-- eseguo
if not EgtApplyMachining( true, false) then
local _, sErr = EgtGetLastMachMgrError()