DataWall :
- modifiche per pulitura spigoli di contorni o equivalenti con sega a catena.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
-- ProcessFreeContour.lua by Egaltech s.r.l. 2021/04/22
|
||||
-- ProcessFreeContour.lua by Egaltech s.r.l. 2021/06/15
|
||||
-- Gestione calcolo profilo libero per Pareti
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
@@ -15,7 +15,7 @@ local WD = require( 'WallData')
|
||||
local WM = require( 'WMachiningLib')
|
||||
local WHISK_OFFS = 0.1
|
||||
local WHISK_SAFE = 5
|
||||
local MIN_LEN_CUT = 50
|
||||
local MIN_LEN_CUT = 250
|
||||
|
||||
-- variabili assegnazione parametri Q
|
||||
local sTypeCornerCut = 'Q05' -- i
|
||||
@@ -1230,6 +1230,11 @@ local function AddMillings( sMilling, vFace, Proc, nRawId, b3Raw, nConeCut, nAdd
|
||||
dEal = -dMillDiam / 2
|
||||
end
|
||||
end
|
||||
-- se percorso chiuso e completo con fresa
|
||||
if bClosed and bAllType4 then
|
||||
dSal = 0
|
||||
dEal = 0
|
||||
end
|
||||
end
|
||||
-- se non devo scaricare l'angolo
|
||||
if nConeCut <= 1 then
|
||||
@@ -1384,6 +1389,11 @@ local function AddSawings( sSawing, vFace, Proc, nRawId, b3Raw)
|
||||
dMaxDepth = EgtTdbGetCurrToolMaxDepth() or dMaxDepth
|
||||
end
|
||||
end
|
||||
-- Calcolo angolo 3° asse rot (da direz. utensile)
|
||||
local sRot3Ang = 'A1=180'
|
||||
if WD.GetChainSawBlockedAxis then
|
||||
sRot3Ang = WD.GetChainSawBlockedAxis( 1)
|
||||
end
|
||||
-- ciclo di inserimento dei tagli con sega a catena
|
||||
for i = 1, #vFace do
|
||||
-- se inizio faccia non tagliato completamente, inserisco un ripasso con sega a catena
|
||||
@@ -1398,7 +1408,6 @@ local function AddSawings( sSawing, vFace, Proc, nRawId, b3Raw)
|
||||
end
|
||||
EgtSetInfo( nMchId, 'Part', Proc.PartId)
|
||||
-- calcolo l'affondamento
|
||||
-- local dDepth = min( vFace[i].Width + WD.CUT_EXTRA, dMaxDepth)
|
||||
local dDepth = vFace[i].Width + WD.CUT_EXTRA
|
||||
-- se affondamento superiore ai limiti della fresa
|
||||
if dDepth > dMaxDepth then
|
||||
@@ -1415,12 +1424,19 @@ local function AddSawings( sSawing, vFace, Proc, nRawId, b3Raw)
|
||||
EgtSetMachiningParam( MCH_MP.INVERT, false)
|
||||
-- assegno utilizzo faccia
|
||||
EgtSetMachiningParam( MCH_MP.FACEUSE, MCH_MILL_FU.PARAL_DOWN)
|
||||
-- imposto angolo 3° asse rot
|
||||
EgtSetMachiningParam( MCH_MP.BLOCKEDAXIS, sRot3Ang)
|
||||
-- assegno affondamento
|
||||
EgtSetMachiningParam( MCH_MP.DEPTH, dDepth)
|
||||
-- assegno lato di lavoro
|
||||
EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.RIGHT)
|
||||
-- posizione braccio porta testa
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.NONE)
|
||||
if vFace[i].Norm:getX() < 0.018 then
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.NONE)
|
||||
else
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.OPPOSITE)
|
||||
EgtSetMachiningParam( MCH_MP.OFFSR, dSawThick)
|
||||
end
|
||||
-- eseguo
|
||||
if not EgtApplyMachining( true, false) then
|
||||
local _, sErr = EgtGetLastMachMgrError()
|
||||
@@ -1440,7 +1456,6 @@ local function AddSawings( sSawing, vFace, Proc, nRawId, b3Raw)
|
||||
end
|
||||
EgtSetInfo( nMchId, 'Part', Proc.PartId)
|
||||
-- calcolo l'affondamento
|
||||
-- local dDepth = min( vFace[i].Width + WD.CUT_EXTRA, dMaxDepth)
|
||||
local dDepth = vFace[i].Width + WD.CUT_EXTRA
|
||||
-- se affondamento superiore ai limiti della fresa
|
||||
if dDepth > dMaxDepth then
|
||||
@@ -1460,12 +1475,19 @@ local function AddSawings( sSawing, vFace, Proc, nRawId, b3Raw)
|
||||
EgtSetMachiningParam( MCH_MP.INVERT, false)
|
||||
-- assegno utilizzo faccia
|
||||
EgtSetMachiningParam( MCH_MP.FACEUSE, MCH_MILL_FU.PARAL_DOWN)
|
||||
-- imposto angolo 3° asse rot
|
||||
EgtSetMachiningParam( MCH_MP.BLOCKEDAXIS, sRot3Ang)
|
||||
-- assegno affondamento
|
||||
EgtSetMachiningParam( MCH_MP.DEPTH, dDepth)
|
||||
-- assegno lato di lavoro
|
||||
EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.RIGHT)
|
||||
-- posizione braccio porta testa
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.NONE)
|
||||
if vFace[i].Norm:getX() < 0.018 then
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.NONE)
|
||||
else
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.OPPOSITE)
|
||||
EgtSetMachiningParam( MCH_MP.OFFSR, dSawThick)
|
||||
end
|
||||
-- eseguo
|
||||
if not EgtApplyMachining( true, false) then
|
||||
local _, sErr = EgtGetLastMachMgrError()
|
||||
|
||||
Reference in New Issue
Block a user