- Aggiornato 3D con macchina reale

- Sistemata direzione assi
- Modificata posizione scarico per pezzi standard e pezzi corti
- Collisioni scritte sotto forma di tabella
- Aggiunta note utensili e lavorazioni
- Sistemati ToolHolders
This commit is contained in:
andrea.villa
2024-07-03 13:06:09 +02:00
parent 192bbde394
commit a721c72e1b
14 changed files with 150 additions and 51 deletions
+35 -20
View File
@@ -56,27 +56,42 @@ function OnSimulStart()
DumpCollisionCheck( EMT.COLLOBJ, 'Collision Objects :', 4)
-- Preparo lista solidi macchina con cui possono collidere gli oggetti sopra riportati (in aggiunta a VMill)
EMT.MCODET = {}
EMT.MCODET[1] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetAxisId( 'X1'), 'COLLISION'), 'STM1') or GDB_ID.NULL
EMT.MCODET[2] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetAxisId( 'PX1'), 'COLLISION'), 'STM1') or GDB_ID.NULL
EMT.MCODET[3] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetAxisId( 'X2'), 'COLLISION'), 'STM1') or GDB_ID.NULL
EMT.MCODET[4] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetAxisId( 'PX2'), 'COLLISION'), 'STM1') or GDB_ID.NULL
EMT.MCODET[5] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM1') or GDB_ID.NULL
EMT.MCODET[6] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM2') or GDB_ID.NULL
EMT.MCODET[7] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM3') or GDB_ID.NULL
EMT.MCODET[8] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM4') or GDB_ID.NULL
EMT.MCODET[9] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM5') or GDB_ID.NULL
EMT.MCODET[10] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM6') or GDB_ID.NULL
EMT.MCODET[11] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM7') or GDB_ID.NULL
EMT.MCODET[12] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM8') or GDB_ID.NULL
EMT.MCODET[13] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM9') or GDB_ID.NULL
EMT.MCODET[14] = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetBaseId( 'Base'), 'COLLISION'), 'STM10') or GDB_ID.NULL
for i = #EMT.MCODET, 1, -1 do
if not EMT.MCODET[i] or EMT.MCODET[i] == GDB_ID.NULL then
table.remove( EMT.MCODET, i)
EgtOutLog( ' Warning : MCODET element (' .. tostring( i) .. ') is null')
elseif EgtGetDebugLevel() >= 4 then
EgtOutLog( ' MCODET element (' .. tostring( i) .. ') is ok')
local McdData = { { Grp = 'X1', Sub = 'COLLISION', Name = 'STM1'},
{ Grp = 'X1', Sub = 'COLLISION', Name = 'STM2'},
{ Grp = 'PX1', Sub = 'COLLISION', Name = 'STM1'},
{ Grp = 'X2', Sub = 'COLLISION', Name = 'STM1'},
{ Grp = 'X2', Sub = 'COLLISION', Name = 'STM2'},
{ Grp = 'PX2', Sub = 'COLLISION', Name = 'STM1'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM1'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM2'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM3'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM4'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM5'},
--{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM6'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM7'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM8'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM9'},
{ Grp = 'Base', Sub = 'COLLISION', Name = 'STM10'}}
EgtOutLog( 'MCODET Objects :', 4)
local nMcdNullCnt = 0
for i = 1, #McdData do
local nGrpId
if McdData[i].Grp == 'Base' then
nGrpId = EgtGetBaseId( 'Base')
else
nGrpId = EgtGetAxisId( McdData[i].Grp)
end
local nId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( nGrpId, McdData[i].Sub), McdData[i].Name)
if nId then
table.insert( EMT.MCODET, nId)
EgtOutLog( 'Element ' .. McdData[i].Grp .. '/' .. McdData[i].Sub .. '/' .. McdData[i].Name .. ' (' .. tostring( nId) .. ') is ok', 4)
else
nMcdNullCnt = nMcdNullCnt + 1
EgtOutLog( 'Element ' .. McdData[i].Grp .. '/' .. McdData[i].Sub .. '/' .. McdData[i].Name .. ' is null', 4)
end
end
if nMcdNullCnt > 0 then
EgtOutLog( 'Warning : MCODET with one or more null Element(s) ')
end
-- Preparo lista collisioni vuota
EMT.COLLIDE = {}