DataWall :

- prime modifiche per gestione pareti su macchina travi.
This commit is contained in:
Dario Sassi
2021-03-04 09:45:53 +00:00
parent 8859059a4b
commit 631b8aec2d
2 changed files with 53 additions and 8 deletions
+30 -7
View File
@@ -199,9 +199,35 @@ if bToProcess then
-- Aggiorno eventuali dati ausiliari
UpdateAuxData( sBtmFile)
-- Recupero informazione se progetto o produzione
local bProj = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo'), 'PROJECT', 'i') == 1)
-- Dimensioni del pannello
local dRawL = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or GDB_ID.NULL, 'PANELLEN', 'd') or 8000)
local dRawW = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or GDB_ID.NULL, 'PANELWIDTH', 'd') or 4000)
local dRawL = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or GDB_ID.NULL, 'PANELLEN', 'd') or 100)
local dRawW = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or GDB_ID.NULL, 'PANELWIDTH', 'd') or 50)
local dExtraL = 0
local dExtraW = 0
if bProj then
if WD.BEAM_MACHINE then
if dRawL < WD.MIN_LENGTH then
dExtraL = WD.MIN_LENGTH - dRawL
dRawL = WD.MIN_LENGTH
elseif dRawL < WD.MAX_LENGTH then
dExtraL = min( WD.MAX_LENGTH - dRawL, 3000)
dRawL = dRawL + dExtraL
end
if dRawW + 10 < WD.MIN_WIDTH then
dExtraW = WD.MIN_WIDTH - dRawW
dRawW = WD.MIN_WIDTH
elseif dRawW < WD.MAX_WIDTH then
dExtraW = min( WD.MAX_WIDTH - dRawW, 10)
dRawW = dRawW + dExtraW
end
else
dExtraW = 10
dRawW = dRawW + dExtraW
end
end
-- Recupero l'elenco ordinato delle pareti
local vWall = {}
@@ -243,14 +269,11 @@ if bToProcess then
-- Ne recupero la posizione
for i = 1, #vWall do
local PosX = EgtGetInfo( vWall[i].Id, 'POSX', 'd')
vWall[i].PosX = PosX
vWall[i].PosX = PosX + min( dExtraL, 1200)
local PosZ = EgtGetInfo( vWall[i].Id, 'POSZ', 'd')
vWall[i].PosZ = PosZ
vWall[i].PosZ = PosZ + dExtraW / 2
end
-- Recupero informazione se progetto o produzione
local bProj = ( EgtGetInfo( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo'), 'PROJECT', 'i') == 1)
-- Eseguo eventuali rotazioni e inversioni testa-coda
for i = 1, #vWall do
local b3Solid = vWall[i].Box