e2bd8474c9
- Se parametro HOODPS non prersente, non si comanda cuffia - Cambio versione per rilascio post a cliente
508 lines
15 KiB
Plaintext
508 lines
15 KiB
Plaintext
-- Descrizione macchina Masterwood Project265 2025/01/09
|
|
-- by EgalWare s.r.l.
|
|
|
|
require( 'EmtGenerator')
|
|
EgtEnableDebug( false)
|
|
|
|
PP_VER = '2.7f1'
|
|
PP_NVER = '2.7.6.1'
|
|
MIN_MACH_VER = '2.5k1'
|
|
MACH_NAME = 'MW_Project265'
|
|
|
|
-- DATI MACCHINA --
|
|
NumericalControl = 'TECNOS'
|
|
PIVOT = 135
|
|
-- DATI TAVOLA --
|
|
TabX = 247.0064
|
|
TabY = -1914.5486
|
|
TabZ = -591.0497
|
|
----------------------------------------------------
|
|
-------------------- CORSE ASSI --------------------
|
|
----------------------------------------------------
|
|
XAxisStroke = {-9999, 9999}
|
|
YAxisStroke = {-9999, 9999}
|
|
ZAxisStroke = {-9999, 9999}
|
|
CAxisStroke = {-270, 270}
|
|
AAxisStroke = {-110, 110}
|
|
|
|
----------------------------------------------------
|
|
-------------------- DATI TESTE --------------------
|
|
----------------------------------------------------
|
|
-- testa 5 assi
|
|
H11Pos = Vector3d( 0, 0, 0)
|
|
-- gruppo forare
|
|
H21PosX = -249.005
|
|
H21PosY = 522.001
|
|
H21PosZ = 255.95
|
|
H21Pos = H11Pos + Vector3d( H21PosX, H21PosY, H21PosZ)
|
|
-- teste gruppo forare
|
|
MDRILL = { { Pos = H21Pos + Vector3d( 0, 0, 0), Ex=1, St=61}, -- uscita 1
|
|
{ Pos = H21Pos + Vector3d( 32, 0, 0), Ex=2, St=61}, -- uscita 2
|
|
{ Pos = H21Pos + Vector3d( 64, 0, 0), Ex=3, St=61}, -- uscita 3
|
|
{ Pos = H21Pos + Vector3d( 96, 0, 0), Ex=4, St=61}, -- uscita 4
|
|
{ Pos = H21Pos + Vector3d( 128, 0, 0), Ex=5, St=61}, -- uscita 5
|
|
{ Pos = H21Pos + Vector3d( 160, 0, 0), Ex=6, St=61}, -- uscita 6
|
|
{ Pos = H21Pos + Vector3d( 192, 0, 0), Ex=7, St=61}, -- uscita 7
|
|
{ Pos = H21Pos + Vector3d( 0, 64, 0), Ex=8, St=61}, -- uscita 8
|
|
{ Pos = H21Pos + Vector3d( 0, 96, 0), Ex=9, St=61}, -- uscita 9
|
|
{ Pos = H21Pos + Vector3d( 0, 128, 0), Ex=10, St=61}, -- uscita 10
|
|
{ Pos = H21Pos + Vector3d( 0, 160, 0), Ex=11, St=61}, -- uscita 11
|
|
{ Pos = H21Pos + Vector3d( -32, 32, -51.2), Ex=12, Token=31, Tw=13,St=76}, -- uscita 12
|
|
{ Pos = H21Pos + Vector3d( -32, -32, -51.2), Ex=13, Token=33, Tw=12,St=76}, -- uscita 13
|
|
{ Pos = H21Pos + Vector3d( 224, 64, -51.2), Ex=14, Token=35, Tw=16,St=76}, -- uscita 14
|
|
{ Pos = H21Pos + Vector3d( 224, 96, -51.2), Ex=15, Token=36, Tw=17,St=76}, -- uscita 15
|
|
{ Pos = H21Pos + Vector3d( 160, 64, -51.2),Ex=16, Token=37, Tw=14,St=76}, -- uscita 16
|
|
{ Pos = H21Pos + Vector3d( 160, 96, -51.2), Ex=17, Token=38, Tw=15,St=76}, -- uscita 17
|
|
{ Pos = H21Pos + Vector3d( 192, 192.5, -8.2), Ex=18, Token=50, St=76} -- uscita 18
|
|
}
|
|
|
|
----------------------------------------------------
|
|
----------------- DATI BANCALETTI ------------------
|
|
----------------------------------------------------
|
|
|
|
----------------------------------------------------
|
|
----------------- DATI SOTTOPEZZI-------------------
|
|
----------------------------------------------------
|
|
|
|
----------------------------------------------------------------------
|
|
EmtGeneral {
|
|
File='Masterwood-Project265.nge',
|
|
Offset = Vector3d( 3582.5064,-384.5486,-736.0497),
|
|
AxisMaxAdjust = 10,
|
|
ExitMaxAdjust = 20,
|
|
Special = 'Masterwood-Project265.mlse',
|
|
Processor = 'Masterwood-Project265.mlpe'}
|
|
EmtBase {
|
|
Name = 'Base',
|
|
Geo= 'BASE/GEO',
|
|
Aux= { 'BASE/SOLID', 'BASE/TC'}}
|
|
-- Testa e TC
|
|
EmtAxis {
|
|
Name = 'X',
|
|
Parent = 'Base',
|
|
Token = 'X',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = XAxisStroke,
|
|
Home = 0,
|
|
Geo = 'X_AXIS/GEO',
|
|
Aux = { 'X_AXIS/SOLID', 'X_AXIS/TCR'}}
|
|
EmtAxis {
|
|
Name = 'Y',
|
|
Parent = 'X',
|
|
Token = 'Y',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = Y_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = YAxisStroke,
|
|
Home = 0,
|
|
Geo = 'Y_AXIS/GEO',
|
|
Aux = 'Y_AXIS/SOLID'}
|
|
EmtAxis {
|
|
Name = 'Z1',
|
|
Parent = 'Y',
|
|
Token = 'Z',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = Z_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = ZAxisStroke,
|
|
Home = 0,
|
|
Geo = 'Z1_AXIS/GEO',
|
|
Aux = 'Z1_AXIS/SOLID'}
|
|
EmtAxis {
|
|
Name = 'C',
|
|
Parent = 'Z1',
|
|
Token = 'C',
|
|
Type = MCH_AT.ROTARY,
|
|
Dir = -Z_AX(),
|
|
Pos = Point3d(-135, 0, 244),
|
|
Stroke = CAxisStroke,
|
|
Home = 0,
|
|
Geo = 'C_AXIS/GEO',
|
|
Aux = {'C_AXIS/SOLID', 'C_AXIS/COLLISION'}}
|
|
EmtAxis {
|
|
Name = 'A',
|
|
Parent = 'C',
|
|
Token = 'A',
|
|
Type = MCH_AT.ROTARY,
|
|
Dir = Y_AX(),
|
|
Pos = Point3d( -135, 86.5, 0),
|
|
Stroke = AAxisStroke,
|
|
Home = 90,
|
|
Geo = 'A_AXIS/GEO',
|
|
Aux = {'A_AXIS/SOLID', 'A_AXIS/COLLISION'}}
|
|
EmtHead {
|
|
Name = 'H11',
|
|
Parent = 'A',
|
|
HSet = 'H11',
|
|
Type = MCH_HT.STD,
|
|
Pos = H11Pos,
|
|
TDir = -X_AX(),
|
|
ADir = Y_AX(),
|
|
OthColl = {'C/SOLID','A/SOLID'},
|
|
Geo = 'H11_HEAD/GEO'}
|
|
EmtAxis {
|
|
Name = 'Z2',
|
|
Parent = 'Y',
|
|
Token = 'Z',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = Z_AX(),
|
|
Pos = Point3d( 0, 0, 0),
|
|
Stroke = {-850.9, 200},
|
|
Home = 0,
|
|
Geo = 'Z2_AXIS/GEO',
|
|
Aux = 'Z2_AXIS/SOLID'}
|
|
EmtHead {
|
|
Name = 'H21',
|
|
Parent = 'Z2',
|
|
HSet = 'H21',
|
|
Type = MCH_HT.MULTI,
|
|
SelType = MCH_SLT.MULTIEXITS,
|
|
ExitNbr = 18,
|
|
Pos1 = MDRILL[1].Pos,
|
|
TDir1 = Z_AX(),
|
|
Pos2 = MDRILL[2].Pos,
|
|
TDir2 = Z_AX(),
|
|
Pos3 = MDRILL[3].Pos,
|
|
TDir3 = Z_AX(),
|
|
Pos4 = MDRILL[4].Pos,
|
|
TDir4 = Z_AX(),
|
|
Pos5 = MDRILL[5].Pos,
|
|
TDir5 = Z_AX(),
|
|
Pos6 = MDRILL[6].Pos,
|
|
TDir6 = Z_AX(),
|
|
Pos7 = MDRILL[7].Pos,
|
|
TDir7 = Z_AX(),
|
|
Pos8 = MDRILL[8].Pos,
|
|
TDir8 = Z_AX(),
|
|
Pos9 = MDRILL[9].Pos,
|
|
TDir9 = Z_AX(),
|
|
Pos10 = MDRILL[10].Pos,
|
|
TDir10 = Z_AX(),
|
|
Pos11 = MDRILL[11].Pos,
|
|
TDir11 = Z_AX(),
|
|
Pos12 = MDRILL[12].Pos,
|
|
TDir12 = -Y_AX(),
|
|
Pos13 = MDRILL[13].Pos,
|
|
TDir13 = Y_AX(),
|
|
Pos14 = MDRILL[14].Pos,
|
|
TDir14 = -X_AX(),
|
|
Pos15 = MDRILL[15].Pos,
|
|
TDir15 = -X_AX(),
|
|
Pos16 = MDRILL[16].Pos,
|
|
TDir16 = X_AX(),
|
|
Pos17 = MDRILL[17].Pos,
|
|
TDir17 = X_AX(),
|
|
Pos18 = MDRILL[18].Pos,
|
|
TDir18 = -Y_AX(),
|
|
ADir = VectorFromPolar( 1, 45),
|
|
Geo = 'H21_HEAD/GEO',
|
|
Aux = {'H21_HEAD/SOLID', 'H21_HEAD/SOL_T1', 'H21_HEAD/SOL_T2', 'H21_HEAD/SOL_T3', 'H21_HEAD/SOL_T4', 'H21_HEAD/SOL_T5',
|
|
'H21_HEAD/SOL_T6', 'H21_HEAD/SOL_T7', 'H21_HEAD/SOL_T8', 'H21_HEAD/SOL_T9', 'H21_HEAD/SOL_T10', 'H21_HEAD/SOL_T11',
|
|
'H21_HEAD/SOL_T12', 'H21_HEAD/SOL_T14', 'H21_HEAD/SOL_T15', 'H21_HEAD/SOL_T18'}}
|
|
-- Posizioni utensili speciali
|
|
EmtTcPos {
|
|
Name = 'T17',
|
|
Parent = 'Base',
|
|
Pos = Point3d( 3807.48, -578.72, -656.55),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'BASE/T17'}
|
|
EmtTcPos {
|
|
Name = 'T18',
|
|
Parent = 'Base',
|
|
Pos = Point3d( 3807.48, -843.72, -656.55),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'BASE/T18'}
|
|
|
|
-- Tool Changer
|
|
local ptTcR = Point3d( -60, 434.95, -558)
|
|
EmtTcPos {
|
|
Name = 'T1',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, 22.5 * 4),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T1'}
|
|
EmtTcPos {
|
|
Name = 'T2',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, 22.5 * 3),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T2'}
|
|
EmtTcPos {
|
|
Name = 'T3',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, 22.5 * 2),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T3'}
|
|
EmtTcPos {
|
|
Name = 'T4',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, 22.5 * 1),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T4'}
|
|
EmtTcPos {
|
|
Name = 'T5',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, 0),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T5'}
|
|
EmtTcPos {
|
|
Name = 'T6',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 1),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T6'}
|
|
EmtTcPos {
|
|
Name = 'T7',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 2),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T7'}
|
|
EmtTcPos {
|
|
Name = 'T8',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 3),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T8'}
|
|
EmtTcPos {
|
|
Name = 'T9',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 4),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T9'}
|
|
EmtTcPos {
|
|
Name = 'T10',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 5),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T10'}
|
|
EmtTcPos {
|
|
Name = 'T11',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 6),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T11'}
|
|
EmtTcPos {
|
|
Name = 'T12',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 7),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T12'}
|
|
EmtTcPos {
|
|
Name = 'T13',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 8),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T13'}
|
|
EmtTcPos {
|
|
Name = 'T14',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 9),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T14'}
|
|
EmtTcPos {
|
|
Name = 'T15',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 10),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T15'}
|
|
EmtTcPos {
|
|
Name = 'T16',
|
|
Parent = 'X',
|
|
Pos = ptTcR + VectorFromSpherical( 266, 90, -22.5 * 11),
|
|
TDir = Z_AX(),
|
|
ADir = X_AX(),
|
|
Geo = 'X_AXIS/T16'}
|
|
|
|
-- Tavola
|
|
EmtTable {
|
|
Name = 'Tab',
|
|
Parent = 'Base',
|
|
Type = MCH_TT.FLAT,
|
|
Ref1 = {TabX, TabY, TabZ},
|
|
Geo = 'TABLE/GEO',
|
|
Aux = 'TABLE/SOLID'}
|
|
-- bancaletti
|
|
local PL1Id = EmtAxis {
|
|
Name = 'PL1',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {50, 2000},
|
|
Home = 80,
|
|
Geo = 'PL1_AXIS/GEO',
|
|
Aux = {'PL1_AXIS/SOLID', 'PL1_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL1Id, 'MDist', 100)
|
|
EgtSetInfo( PL1Id, 'PDist', 110)
|
|
EgtSetInfo( PL1Id, 'Next', 'PL2')
|
|
EgtMove( PL1Id, Vector3d( -80, 0, 0), GDB_RT.GLOB)
|
|
local PL2Id = EmtAxis {
|
|
Name = 'PL2',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {200, 2100},
|
|
Home = 280,
|
|
Geo = 'PL2_AXIS/GEO',
|
|
Aux = {'PL2_AXIS/SOLID', 'PL2_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL2Id, 'MDist', 100)
|
|
EgtSetInfo( PL2Id, 'PDist', 110)
|
|
EgtSetInfo( PL2Id, 'Prev', 'PL1')
|
|
EgtSetInfo( PL2Id, 'Next', 'PL3')
|
|
EgtMove( PL2Id, Vector3d( -280, 0, 0), GDB_RT.GLOB)
|
|
local PL3Id = EmtAxis {
|
|
Name = 'PL3',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {400, 2200},
|
|
Home = 480,
|
|
Geo = 'PL3_AXIS/GEO',
|
|
Aux = {'PL3_AXIS/SOLID', 'PL3_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL3Id, 'MDist', 100)
|
|
EgtSetInfo( PL3Id, 'PDist', 110)
|
|
EgtSetInfo( PL3Id, 'Prev', 'PL2')
|
|
EgtSetInfo( PL3Id, 'Next', 'PL4')
|
|
EgtMove( PL3Id, Vector3d( -480, 0, 0), GDB_RT.GLOB)
|
|
local PL4Id = EmtAxis {
|
|
Name = 'PL4',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {800, 2900},
|
|
Home = 2730,
|
|
Geo = 'PL4_AXIS/GEO',
|
|
Aux = {'PL4_AXIS/SOLID', 'PL4_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL4Id, 'MDist', 100)
|
|
EgtSetInfo( PL4Id, 'PDist', 110)
|
|
EgtSetInfo( PL4Id, 'Prev', 'PL3')
|
|
EgtSetInfo( PL4Id, 'Next', 'PL5')
|
|
EgtMove( PL4Id, Vector3d( -2730, 0, 0), GDB_RT.GLOB)
|
|
local PL5Id = EmtAxis {
|
|
Name = 'PL5',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {900, 3100},
|
|
Home = 2930,
|
|
Geo = 'PL5_AXIS/GEO',
|
|
Aux = {'PL5_AXIS/SOLID', 'PL5_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL5Id, 'MDist', 100)
|
|
EgtSetInfo( PL5Id, 'PDist', 110)
|
|
EgtSetInfo( PL5Id, 'Prev', 'PL4')
|
|
EgtSetInfo( PL5Id, 'Next', 'PL6')
|
|
EgtMove( PL5Id, Vector3d( -2930, 0, 0), GDB_RT.GLOB)
|
|
local PL6Id = EmtAxis {
|
|
Name = 'PL6',
|
|
Parent = 'Tab',
|
|
Type = MCH_AT.LINEAR,
|
|
Dir = X_AX(),
|
|
Pos = Point3d(0, 0, 0),
|
|
Stroke = {1000, 3300},
|
|
Home = 3130,
|
|
Geo = 'PL6_AXIS/GEO',
|
|
Aux = {'PL6_AXIS/SOLID', 'PL6_AXIS/COLLISION'}}
|
|
EgtSetInfo( PL6Id, 'MDist', 100)
|
|
EgtSetInfo( PL6Id, 'PDist', 110)
|
|
EgtSetInfo( PL6Id, 'Prev', 'PL5')
|
|
EgtMove( PL6Id, Vector3d( -3130, 0, 0), GDB_RT.GLOB)
|
|
|
|
---------------------------------------------------------------------
|
|
-- Funzioni richiamate per modificare i dati macchina in casi particolari
|
|
---------------------------------------------------------------------
|
|
function OnSetTable()
|
|
EgtSetTableAreaOffset( 100, 100, 100, 100)
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
local function MoveGroup( nGrpId, vtVers, dPos, bLoc)
|
|
local dVal = EgtGetInfo( nGrpId, 'Val')
|
|
if not dVal then return end
|
|
if abs( dPos - dVal) > GEO.EPS_SMALL then
|
|
local nRT = EgtIf( bLoc, GDB_RT.LOC, GDB_RT.GLOB)
|
|
EgtMove( nGrpId, ( dPos - dVal) * vtVers, nRT)
|
|
EgtSetInfo( nGrpId, 'Val', dPos)
|
|
end
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function OnActivateDrillingUnit()
|
|
|
|
-- assegno dati testa
|
|
local nHeadId = EMC.HEADID
|
|
|
|
-- sistemo dati uscite attive
|
|
local vbExit = {}
|
|
for i = 1, #( EMC.DRACEX or {}) do
|
|
vbExit[EMC.DRACEX[i]] = true
|
|
end
|
|
|
|
-- ciclo su tutte le uscite della testa
|
|
for nExit = 1, #MDRILL do
|
|
-- eventuale gemello
|
|
local nTwin = MDRILL[nExit].Tw or 0
|
|
-- nome e identificativo della geometria dell'uscita
|
|
local sExit = 'T' .. EgtNumToString( nExit, 0)
|
|
local nExitId = EgtGetFirstNameInGroup( nHeadId, sExit)
|
|
-- recupero la geometria associata all'uscita
|
|
local sStem = 'SOL_' .. sExit
|
|
local nStemId = EgtGetFirstNameInGroup( nHeadId, sStem)
|
|
-- determino la posizione
|
|
local dPos = EgtIf( vbExit[nExit] or vbExit[nTwin], 0, MDRILL[nExit].St)
|
|
-- eseguo posizionamento
|
|
if nStemId then
|
|
MoveGroup( nStemId, Z_AX(), dPos)
|
|
end
|
|
MoveGroup( nExitId, Z_AX(), dPos)
|
|
end
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function OnSetHead()
|
|
EMC.HEADID = EgtGetHeadId( 'H21')
|
|
EMC.DRACEX = nil
|
|
OnActivateDrillingUnit()
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
-- Funzione per resettare tutte le attivazioni della macchina
|
|
function OnResetMachine()
|
|
EmtUnlinkAllRawPartsFromGroups()
|
|
EmtUnlinkAllFixturesFromGroups()
|
|
-- nascondo Vmill
|
|
local nRawId = EgtGetFirstRawPart()
|
|
while nRawId do
|
|
local nVmId = EgtGetFirstNameInGroup( nRawId, 'VMill')
|
|
local nId = EgtGetFirstInGroup( nRawId)
|
|
while nId do
|
|
EgtSetStatus( nId, EgtIf( nId ~= nVmId, GDB_ST.ON, GDB_ST.OFF))
|
|
nId = EgtGetNext( nId)
|
|
end
|
|
nRawId = EgtGetNextRawPart( nRawId)
|
|
end
|
|
EgtSetStatus( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'VMill') or GDB_ID.NULL, GDB_ST.OFF)
|
|
end
|