DataBeam 2.5e4 :

- modifiche per problemi su TURN (aggiustamenti su SCC).
This commit is contained in:
DarioS
2023-05-18 08:20:28 +02:00
parent 51261d1231
commit 5f9fc0b975
4 changed files with 60 additions and 41 deletions
+23 -7
View File
@@ -1,4 +1,4 @@
-- ProcessRoundArch.lua by Egaltech s.r.l. 2021/01/29
-- ProcessRoundArch.lua by Egaltech s.r.l. 2023/05/18
-- Gestione calcolo archi per Travi
-- Tabella per definizione modulo
@@ -93,6 +93,8 @@ function ProcessRoundArch.Make( Proc, nPhase, nRawId, nPartId, dOvmHead)
EgtOutLog( sErr)
return false, sErr
end
-- normale alla superficie nel mezzo
local vtN = EgtSurfTmFacetNormVersor( Proc.Id, Proc.Fct // 2, GDB_RT.GLOB)
-- recupero e verifico l'entità curva
local AuxId = EgtGetInfo( Proc.Id, 'AUXID', 'i')
if AuxId then AuxId = AuxId + Proc.Id end
@@ -222,13 +224,27 @@ function ProcessRoundArch.Make( Proc, nPhase, nRawId, nPartId, dOvmHead)
EgtSetMachiningParam( MCH_MP.WORKSIDE, MCH_MILL_WS.RIGHT)
end
-- posizione braccio porta testa
if Proc.Head then
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.ADIR_XP)
elseif Proc.Tail then
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.ADIR_XM)
elseif AreSameOrOppositeVectorApprox( vtExtr, Z_AX()) then
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.ADIR_YP)
local nSCC = MCH_SCC.NONE
if not BD.C_SIMM and not BD.TURN then
if Proc.Head then
nSCC = MCH_SCC.ADIR_XP
elseif Proc.Tail then
nSCC = MCH_SCC.ADIR_XM
elseif AreSameOrOppositeVectorApprox( vtExtr, Z_AX()) then
nSCC = MCH_SCC.ADIR_YP
end
elseif BD.TURN then
if vtN:getZ() > 0.707 then
nSCC = MCH_SCC.ADIR_ZP
elseif vtN:getZ() < -0.707 then
nSCC = MCH_SCC.ADIR_ZM
elseif vtN:getY() > 0.707 then
nSCC = MCH_SCC.ADIR_YP
elseif vtN:getY() < -0.707 then
nSCC = MCH_SCC.ADIR_YM
end
end
EgtSetMachiningParam( MCH_MP.SCC, nSCC)
-- eseguo
if not ML.ApplyMachining( true, false) then
local _, sErr = EgtGetLastMachMgrError()