15 Commits

Author SHA1 Message Date
luca.mazzoleni b7edad0235 in WallData modificato PANELSAW_TYPE 2025-09-16 12:11:22 +02:00
luca.mazzoleni 6bcd42654a - cambio versione 2025-09-11 12:28:42 +02:00
luca.mazzoleni b523286d37 - in WallData aggiunta costante PANELSAW_TYPE per scegliere il tipo di export per sezionatrice 2025-09-11 12:28:11 +02:00
luca.mazzoleni ef5d3ed40b Merge branch 'main' of https://gitlab.steamware.net/egalware-machines/masterwood/Masterwood-TF600KST 2025-08-25 16:51:52 +02:00
luca.mazzoleni 22c8363684 - in WallData aggiunto parametro ENABLE_SIMPLE_NESTING per nesting cabinet
- eliminati file non git
2025-08-25 16:51:48 +02:00
Dario Sassi 9c1256940d Masterwood-TF600KST 2.7h1 :
- modifiche per evitare collisioni in simulazione con gruppo a forare.
2025-08-22 17:41:20 +02:00
luca.mazzoleni d60c926b73 - in WallData MIN_HEIGHT portata a 7. Versione non cambiata 2025-07-17 15:26:18 +02:00
luca.mazzoleni a48ddc8eb0 - in WallData update dimensioni pezzo min/max 2025-07-17 09:51:15 +02:00
luca.mazzoleni 169aa72a0c - in ini macchina settata per usare la spunta invece del db setup 2025-06-17 15:30:36 +02:00
luca.mazzoleni 86f71435c6 - update corse e dimensioni massime 2025-06-17 11:23:55 +02:00
luca.mazzoleni 822f03ed17 update gitignore 2025-06-17 09:29:38 +02:00
Dario Sassi ec18dcbedc Masterwood-TF600KST 2.7f2 :
- in forature multiple vengono ora esclusi dalla generazione i fori non lavorati.
2025-06-09 11:55:43 +02:00
luca.mazzoleni c672f65ca4 - update ini per copia part program da interfaccia 2025-06-04 10:57:05 +02:00
andrea.villa b479f99f05 Corretto nome asse Z per calcolo tempi 2025-04-28 16:03:08 +02:00
luca.mazzoleni 04137978fc - aggiunta cartella per script Wall
- in ini settato setup standard
2025-04-28 15:25:04 +02:00
11 changed files with 236 additions and 66 deletions
+10 -1
View File
@@ -1,8 +1,17 @@
/Tools
/Machinings
/SetUp
/Beam/Ts3Data.bak
/Beam/CutData.lua
/Beam/DrillData.lua
/Beam/MillingData.lua
/Beam/PocketingData.lua
/Beam/SawingData.lua
/Beam/SawingData.lua
/Beam/Ts3Data.lua
/Wall/Ts3Data.bak
/Wall/CutData.lua
/Wall/DrillData.lua
/Wall/MillingData.lua
/Wall/PocketingData.lua
/Wall/SawingData.lua
/Wall/Ts3Data.lua
+5 -4
View File
@@ -1,9 +1,9 @@
; Commento per evitare BOM con UTF-8
[General]
Material=Wood
[PartProgram]
Extension=.mpr
Supervisor=0
SaveCncPath=C:\Tf600ISO
SaveExt=mpr
[Tools]
Drillbit=1
@@ -15,6 +15,7 @@ DrillMaker=MakeWoodDrill.lua
SawbladeMaker=MakeSawblade.lua
MillMaker=MakeWoodCylMill.lua
ChiselMaker=MakeChisel.lua
Active=1
[ToolHolder]
H11.1=HSK-F63_MillWeld12.nge
@@ -54,7 +55,7 @@ H21=6601
H22=6612
[SetUp]
Default=
Default=Std
[VMill]
Enable=1
+25 -25
View File
@@ -1,10 +1,10 @@
-- Descrizione macchina Masterwood TF600KST 2025/04/16
-- Descrizione macchina Masterwood TF600KST 2025/08/22
-- by EgalWare s.r.l.
require( 'EmtGenerator')
EgtEnableDebug( false)
PP_VER = '2.7d3'
PP_VER = '2.7i1'
MIN_MACH_VER = '2.7d2'
-- DATI MACCHINA --
@@ -19,7 +19,7 @@ TabZ = 0
----------------------------------------------------
-------------------- CORSE ASSI --------------------
----------------------------------------------------
XAxisStroke = {-2000, 2000}
XAxisStroke = {-3000, 3000}
XAxisHome = 0
YAxisStroke = {-2000, 2000}
Z11AxisStroke = {-700, 700}
@@ -38,27 +38,27 @@ H12PosY = 0
H12PosZ = 0
H12Pos = H11Pos + Vector3d( H12PosX, H12PosY, H12PosZ)
-- teste gruppo a forare sopra
MDRILLTOP = { { Pos = H12Pos + Vector3d( 0, 0, 0), Ex=1, St=60}, -- uscita 1
{ Pos = H12Pos + Vector3d( 32, 0, 0), Ex=2, St=60}, -- uscita 2
{ Pos = H12Pos + Vector3d( 64, 0, 0), Ex=3, St=60}, -- uscita 3
{ Pos = H12Pos + Vector3d( 96, 0, 0), Ex=4, St=60}, -- uscita 4
{ Pos = H12Pos + Vector3d( 128, 0, 0), Ex=5, St=60}, -- uscita 5
{ Pos = H12Pos + Vector3d( 160, 0, 0), Ex=6, St=60}, -- uscita 6
{ Pos = H12Pos + Vector3d( 192, -32, 0), Ex=7, St=60}, -- uscita 7
{ Pos = H12Pos + Vector3d( 192, -64, 0), Ex=8, St=60}, -- uscita 8
{ Pos = H12Pos + Vector3d( 192, -96, 0), Ex=9, St=60}, -- uscita 9
{ Pos = H12Pos + Vector3d( 192, -160, 0), Ex=10, St=60}, -- uscita 10
{ Pos = H12Pos + Vector3d( 192, -192, 0), Ex=11, St=60}, -- uscita 11
{ Pos = H12Pos + Vector3d( 192, -224, 0), Ex=12, St=60}, -- uscita 12
{ Pos = H12Pos + Vector3d( 192, -256, 0), Ex=13, St=60}, -- uscita 13
{ Pos = H12Pos + Vector3d( 48, -80, 0), Ex=14, St=60}, -- uscita 14
{ Pos = H12Pos + Vector3d( 80, -80, 0), Ex=15, St=60}, -- uscita 15
{ Pos = H12Pos + Vector3d( 22, 96, 0), Ex=16, St=60}, -- uscita 16
{ Pos = H12Pos + Vector3d( 22, 64, 0), Ex=17, St=60}, -- uscita 17
{ Pos = H12Pos + Vector3d( 48, -186, 0), Ex=18, St=60}, -- uscita 18
{ Pos = H12Pos + Vector3d( 60, -186, 0), Ex=19, St=60}, -- uscita 19
{ Pos = H12Pos + Vector3d( 128, 96, 0), Ex=20, St=60}, -- uscita 20
{ Pos = H12Pos + Vector3d( 128, 64, 0), Ex=21, St=60}, -- uscita 21
MDRILLTOP = { { Pos = H12Pos + Vector3d( 0, 0, 0), Ex=1, St=90}, -- uscita 1
{ Pos = H12Pos + Vector3d( 32, 0, 0), Ex=2, St=90}, -- uscita 2
{ Pos = H12Pos + Vector3d( 64, 0, 0), Ex=3, St=90}, -- uscita 3
{ Pos = H12Pos + Vector3d( 96, 0, 0), Ex=4, St=90}, -- uscita 4
{ Pos = H12Pos + Vector3d( 128, 0, 0), Ex=5, St=90}, -- uscita 5
{ Pos = H12Pos + Vector3d( 160, 0, 0), Ex=6, St=90}, -- uscita 6
{ Pos = H12Pos + Vector3d( 192, -32, 0), Ex=7, St=90}, -- uscita 7
{ Pos = H12Pos + Vector3d( 192, -64, 0), Ex=8, St=90}, -- uscita 8
{ Pos = H12Pos + Vector3d( 192, -96, 0), Ex=9, St=90}, -- uscita 9
{ Pos = H12Pos + Vector3d( 192, -160, 0), Ex=10, St=90}, -- uscita 10
{ Pos = H12Pos + Vector3d( 192, -192, 0), Ex=11, St=90}, -- uscita 11
{ Pos = H12Pos + Vector3d( 192, -224, 0), Ex=12, St=90}, -- uscita 12
{ Pos = H12Pos + Vector3d( 192, -256, 0), Ex=13, St=90}, -- uscita 13
{ Pos = H12Pos + Vector3d( 48, -80, 0), Ex=14, Tw=18, St=60}, -- uscita 14
{ Pos = H12Pos + Vector3d( 80, -80, 0), Ex=15, Tw=19, St=60}, -- uscita 15
{ Pos = H12Pos + Vector3d( 22, 96, 0), Ex=16, Tw=20, St=60}, -- uscita 16
{ Pos = H12Pos + Vector3d( 22, 64, 0), Ex=17, Tw=21, St=60}, -- uscita 17
{ Pos = H12Pos + Vector3d( 48, -186, 0), Ex=18, Tw=14, St=60}, -- uscita 18
{ Pos = H12Pos + Vector3d( 60, -186, 0), Ex=19, Tw=15, St=60}, -- uscita 19
{ Pos = H12Pos + Vector3d( 128, 96, 0), Ex=20, Tw=16, St=60}, -- uscita 20
{ Pos = H12Pos + Vector3d( 128, 64, 0), Ex=21, Tw=17, St=60} -- uscita 21
}
-- testa 5 assi sotto
H21Pos = Vector3d( 0, 0, 0)
@@ -349,7 +349,7 @@ end
function OnSetHead()
-- disabilito uscite del gruppo a forare da sopra (gestito con multiselezione)
EMC.HEADID = EgtGetHeadId( 'H12')
EMC.DRACEX = nil
EMC.DRACEX = EgtIf( EMC.HEAD == 'H12', { EMC.EXIT}, nil)
OnActivateDrillingUnit()
-- gestisco uscite del gruppo a forare da sotto (gestito con selezione singola)
EMC.HEADID = EgtGetHeadId( 'H22')
+20 -33
View File
@@ -1,4 +1,4 @@
-- Processore macchina Masterwood-TF600KST 2025/04/16
-- Processore macchina Masterwood-TF600KST 2025/08/22
-- by EgalWare s.r.l.
--
-- Intestazioni
@@ -40,20 +40,19 @@ function OnSimulStart()
-- Preparo lista oggetti da verificare per collisioni
EMT.COLLOBJ = {}
AddToCollisionCheck( 'C', 'COLLISION', EMT.COLLOBJ)
AddToCollisionCheck( 'A', 'COLLISION', EMT.COLLOBJ)
--AddToCollisionCheck( 'C', 'COLLISION', EMT.COLLOBJ)
DumpCollisionCheck( EMT.COLLOBJ, 'Collision Objects :', 4)
-- Preparo lista solidi macchina con cui possono collidere gli oggetti sopra riportati (in aggiunta a VMill)
EMT.MCODET = {}
local McdData = { { Grp = 'PL1', Sub = 'COLLISION', Name = 'STM'},
{ Grp = 'PL2', Sub = 'COLLISION', Name = 'STM'},
{ Grp = 'PL3', Sub = 'COLLISION', Name = 'STM'},
{ Grp = 'PL4', Sub = 'COLLISION', Name = 'STM'},
{ Grp = 'PL5', Sub = 'COLLISION', Name = 'STM'},
{ Grp = 'PL6', Sub = 'COLLISION', Name = 'STM'}}
--local McdData = { { Grp = 'PL1', Sub = 'COLLISION', Name = 'STM'},
-- { Grp = 'PL2', Sub = 'COLLISION', Name = 'STM'},
-- { Grp = 'PL3', Sub = 'COLLISION', Name = 'STM'},
-- { Grp = 'PL4', Sub = 'COLLISION', Name = 'STM'},
-- { Grp = 'PL5', Sub = 'COLLISION', Name = 'STM'},
-- { Grp = 'PL6', Sub = 'COLLISION', Name = 'STM'}}
EgtOutLog( 'MCODET Objects :', 4)
local nMcdNullCnt = 0
for i = 1, #McdData do
for i = 1, #(McdData or {}) do
local nGrpId
if McdData[i].Grp == 'Base' then
nGrpId = EgtGetBaseId( 'Base')
@@ -74,7 +73,7 @@ function OnSimulStart()
end
-- Preparo lista collisioni vuota
EMT.COLLIDE = {}
end
---------------------------------------------------------------------
@@ -277,20 +276,21 @@ end
---------------------------------------------------------------------
function OnSimulToolDeselect()
-- se utensile non cambia e non è sega a catena, esco
-- se utensile non cambia, esco
if EMT.NEXTTOOL == EMT.PREVTOOL then return end
-- deposito utensile
EgtOutText( 'Tool change in progress...')
if EMT.HEAD == 'H11' then
SimulMoveAxis( 'Z1', 650, MCH_SIM_STEP.RAPID)
SimulMoveAxes( 'Y', 2000, MCH_SIM_STEP.RAPID, 'A', 0, MCH_SIM_STEP.RAPROT, 'C', 0, MCH_SIM_STEP.RAPROT)
elseif EMT.NEXTHEAD == 'H11' then
SimulMoveAxis( 'Z2', 400, MCH_SIM_STEP.RAPID)
SimulMoveAxis( 'Y', 2000, MCH_SIM_STEP.RAPID)
if EMT.HEAD == 'H11' and EMT.NEXTHEAD ~= EMT.HEAD then
SimulMoveAxis( 'Z11', 650, MCH_SIM_STEP.RAPID)
elseif EMT.HEAD == 'H12' and EMT.NEXTHEAD ~= EMT.HEAD then
SimulMoveAxis( 'Z12', 400, MCH_SIM_STEP.RAPID)
elseif EMT.HEAD == 'H21' and EMT.NEXTHEAD ~= EMT.HEAD then
SimulMoveAxis( 'Z21', -650, MCH_SIM_STEP.RAPID)
elseif EMT.HEAD == 'H22' and EMT.NEXTHEAD ~= EMT.HEAD then
SimulMoveAxis( 'Z22', -400, MCH_SIM_STEP.RAPID)
end
end
---------------------------------------------------------------------
@@ -532,10 +532,7 @@ end
local RAPID_X_FEED = 20000 -- mm/min
local RAPID_Y_FEED = 20000 -- mm/min
local RAPID_Z_FEED = 10000 -- mm/min
local RAPID_C_FEED = 3600 -- deg/min
local RAPID_B_FEED = 3600 -- deg/min
local RAPID_MIN_T = 1.0 -- s
local UNLOAD_RAW_T = 60 -- s
---------------------------------------------------------------------
function OnEstimStart()
@@ -551,9 +548,7 @@ function OnEstimProgramStart()
-- imposto inizio movimenti da Home
EMT.L1 = EgtGetAxisHomePos( 'X')
EMT.L2 = EgtGetAxisHomePos( 'Y')
EMT.L3 = EgtGetAxisHomePos( 'Z1')
EMT.R1 = EgtGetAxisHomePos( 'C')
EMT.R2 = EgtGetAxisHomePos( 'A')
EMT.L3 = EgtGetAxisHomePos( 'Z11')
-- aggiorno valori come precedenti
EmtUpdatePrev()
-- totalizzatori tempi e lunghezze
@@ -659,10 +654,6 @@ function OnEstimRapid()
local dL1 = EMT.L1 - EMT.L1p
local dL2 = EMT.L2 - EMT.L2p
local dL3 = EMT.L3 - EMT.L3p
local dR1 = 0
if EMT.R1 and EMT.R1p then dR1 = EMT.R1 - EMT.R1p end
local dR2 = 0
if EMT.R2 and EMT.R2p then dR2 = EMT.R2 - EMT.R2p end
-- calcolo lunghezza
local dLen = sqrt( dL1 * dL1 + dL2 * dL2 + dL3 * dL3)
if not EMT.OPEISDISP then
@@ -678,10 +669,6 @@ function OnEstimRapid()
if dT2 > dTime then dTime = dT2 end
local dT3 = abs( dL3) / RAPID_Z_FEED * 60
if dT3 > dTime then dTime = dT3 end
local dT4 = abs( dR1) / RAPID_C_FEED * 60
if dT4 > dTime then dTime = dT4 end
local dT5 = abs( dR2) / RAPID_B_FEED * 60
if dT5 > dTime then dTime = dT5 end
EMT.MCHEXTTIME = EMT.MCHEXTTIME + dTime
-- aggiorno valori come precedenti
Binary file not shown.
+10 -3
View File
@@ -1,4 +1,4 @@
-- Processore generico Masterwood woodWOP 2025/04/15
-- Processore generico Masterwood woodWOP 2025/08/22
-- by EgalWare s.r.l.
--
-- Intestazioni
@@ -7,7 +7,7 @@ EgtEnableDebug( false)
-- Variabili di modulo
local MLE_INFO = 'Egalware-CAM5-MwW-V2.7d1'
local MLE_INFO = 'Egalware-CAM5-MwW-V'..PP_VER
---------------------------------------------------------------------
function OnStart()
@@ -165,8 +165,9 @@ end
function OnMachiningEnd()
-- Se foratura
if EMT.MCHTYPE == MCH_MY.DRILLING then
-- recupero la geometria dei fori
-- recupero l'elenco dei fori da fare e di quelli saltati
local vGeom = EgtGetMachiningGeometry() or {}
local vSkipped = EgtGetMachiningSkippedGeometry() or {}
-- calcolo il riferimento pezzo
local ptS = Point3d( EMT.PP)
local vtE = Vector3d( EMT.EXTR)
@@ -174,6 +175,12 @@ function OnMachiningEnd()
-- per ogni foro emetto la relativa lavorazione
for i = 1, #vGeom do
local nEntId = vGeom[i][1]
for j = 1, #vSkipped do
if nEntId == vSkipped[j][1] then
nEntId = nil
break
end
end
if nEntId and EgtGetType( nEntId) == GDB_TY.CRV_ARC then
local ptCen = EgtCP( nEntId, GDB_ID.ROOT)
ptCen:toLoc( refPart)
+48
View File
@@ -0,0 +1,48 @@
; PIndex = Type, PName, Default, Description
; Type : d=double, l=length, s=string
[1]
Name=Offsets
1= l,MIN_X,-5310,MIN_X
2= l,MAX_X,0,MAX_X
3= l,MIN_Y,-20580,MIN_Y
4= l,MAX_Y,0,MAX_Y
5= l,MIN_Z,-1570,MIN_Z
6= l,MAX_Z,0,MAX_Z
7= d,MIN_B,-135,MIN_B
8= d,MAX_B,135,MAX_B
9= d,MIN_C,-275,MIN_C
10=d,MAX_C,275,MAX_C
11=l,MIN_U,-6075,MIN_U
12=l,MAX_U,-770,MAX_U
13=l,MIN_W,-1110,MIN_W
14=l,MAX_W,0,MAX_W
15=l,MIN_V,0,MIN_V
16=l,MAX_V,90,MAX_V
17=d,MIN_A,-275,MIN_A
18=d,MAX_A,275,MAX_A
19=l,ZERO_X_SAW,-1288.05,ZERO_X_SAW
20=l,ZERO_Y_SAW,-803.45,ZERO_Y_SAW
21=l,ZERO_Z_SAW,-909.55,ZERO_Z_SAW
22=l,PIVOT_SAW,163.15,PIVOT_SAW
23=l,ZERO_X_MILL,-1293.3,ZERO_X_MILL
24=l,ZERO_Y_MILL,-1152,ZERO_Y_MILL
25=l,ZERO_Z_MILL,-992.15,ZERO_Z_MILL
26=l,PIVOT_MILL,208.0,PIVOT_MILL
27=l,INTRULLI,1500,INTRULLI
28=d,TYPEWORK,1,TYPEWORK
29=l,ZERO_X_DRILL,-142.0,ZERO_X_DRILL
30=l,ZERO_Y_DRILL,-1454.33,ZERO_Y_DRILL
31=l,ZERO_Z_DRILL,31.69,ZERO_Z_DRILL
32=l,ZERO_X_DRILL2,3645,ZERO_X_DRILL2
33=l,ZERO_Y_DRILL2,-1454.33,ZERO_Y_DRILL2
34=l,ZERO_Z_DRILL2,31.69,ZERO_Z_DRILL2
[2]
Name=Trave
1=l,XMIN,20,XMIN
2=l,XMAX,3500,XMAX
3=l,YMIN,50,YMIN
4=l,YMAX,18000,YMAX
5=l,ZMIN,1,ZMIN
6=l,ZMAX,400,ZMAX
+26
View File
@@ -0,0 +1,26 @@
[Cut]
1=Standard
[Drill]
1=Drill
2=Pocket
3=MultiDrill
[Milling]
1=FreeContour
2=Side
3=SideGroove
4=DtMortise
5=Mark
6=Text
7=CleanCorner60
8=CleanCorner30
9=SideMill
10=Gorge
[Pocketing]
1=Pocket
2=Mortise
[Sawing]
1=Sawing
+4
View File
@@ -0,0 +1,4 @@
[WALL]
Offset=0
Kerf=0
Range1=30,400
+79
View File
@@ -0,0 +1,79 @@
-- WallData.lua by Egaltech s.r.l. 2022/02/03
-- Raccolta dati generali per Pareti
EgtOutLog( ' 90480027-WallData started', 1)
-- Tabella per definizione modulo
local WallData = {
MIN_LENGTH = 70, -- lunghezza minima del grezzo
MIN_WIDTH = 35, -- larghezza minima del grezzo
MIN_HEIGHT = 7, -- altezza minima del grezzo
MAX_LENGTH = 3000, -- lunghezza massima del grezzo
MAX_WIDTH = 1220, -- larghezza massima del grezzo
MAX_HEIGHT = 60, -- altezza massima del grezzo
STD_RAW_LENGTH = 3000, -- lunghezza standard del grezzo
STD_RAW_WIDTH = 1220, -- larghezza standard del grezzo
OVM_HEAD = 60, -- sovramateriale testa
OVM_MID = 50, -- sovramateriale intermedio
COLL_SIC = 5, -- distanza di sicurezza per collisioni
CUT_SIC = 20, -- distanza di sicurezza per tagli
CUT_EXTRA = 1, -- affondamento extra standard per tagli di lama e fresature
NZ_MINA = 0.5, -- componente limite in Z normale di una faccia (-30deg)
NZ_MINB = -0.4, -- componente limite in Z normale di un insieme di facce (-23deg)
SAWGORGE_INTERAX = 100, -- interasse tra i tagli sfrido del gorge
PREDRILL_DIAM = 26, -- diametro del preforo
PREDRILL_MINANGLE = 0.707, -- minimo angolo che richiede il preforo con fresa (-30deg)
DRILL_TOL = 0.5, -- tolleranza tra diametro foro e diametro punta
DRILL_VZ_MIN = 0.49, -- componente limite in Z del versore di un foro
DRILL_OVERLAP = 5, -- sovrapposizione tra due mezze forature
MILL_OVERLAP = 5, -- sovrapposizione tra due mezze fresature
MAX_CLEAN_CRN60 = 150, -- massimo spessore per pulitura angolo con fresa 60deg
MAX_CLEAN_CRN30 = 90, -- massimo spessore per pulitura angolo con fresa 30deg
MIN_DIM_ALLOW_CLEAN = 200, -- apertura minima per lavorazione pulitura spigolo
MILL_MAX_DEPTH_AS_MAT = false, -- massimo affondamento frese uguale ad altezza tagliente (max materiale)
CHECK_MIN_Z_SAW = true, -- controlla la quota minima della lama rispetto alla tavola (default true)
MIN_Z_SAW = -1, -- quota minima rispetto alla tavola (default 0)
SIDEMILL_DIAM_UP = 65, -- diametro fresa che lavora lap joint sopra
SIDEMILL_DIAM_DOWN = 350, -- diametro fresa che lavora lap joint sotto
SIDEMILL_BEFORE = true, -- mette le lavorazioni di fresatura di fianco tra le prime
INSIDE_RAW_TOL = 30, -- tolleranza utilizzata per definire quando area di lavorazione è lontana dai bordi del grezzo
NEST_HOLE_MIN_AREA = 200000, -- area minima per inserire gli outlines interni come holes nel nesting
RAWCOL = { 255, 160, 32, 30}, -- colore del grezzo
SIMUL_VIEW_DIR = 4, -- direzione di vista predefinita per la simulazione (1=NW, 2=SW, 3=NE, 4=SE)
ORIG_CORNER = 'TL', -- angolo tavola per origine di battuta (BR (defualt), TR, BL, TL)
NESTING_CORNER = 'TL', -- angolo di origine del grezzo per posizionamento pezzi (BR (defualt), TR, BL, TL)
INTRULLI = 1200, -- distanza fra assi su cui poggia il grezzo (per non far cadere il pezzo)
USE_MULTI_DRILL = true, -- attiva l'utilizzo di teste multiforatrici
FORCE_MILL_CONTOUR = true, -- forza i freecontour di fresa (per macchine senza lama)
ENABLE_SIMPLE_NESTING = true, -- modalità nesting semplice, un pezzo per ogni grezzo
PANELSAW_TYPE = 'CUTTY' -- macchine sezionatrici per cui creare le Cutting List (se più di una, elencate separate da virgola)
}
local function GetChainSawBlockedAxis( nInd)
if nInd == 1 then
return 'A1=0'
else
return 'A1=90'
end
end
WallData.GetChainSawBlockedAxis = GetChainSawBlockedAxis
local function GetChainSawStartAngs( vtN2, vtN, ptC)
-- vtN2 : direzione perpendicolare al piano sega a catena (va in vtAux)
-- vtN : direzione utensile sega a catenta (va in vtTool)
-- ptC : centro della faccia
if not vtN or not ptC or not isVector3d( vtN) or not isPoint3d( ptC) then return end
if vtN:getZ() > 0.7 then
return ''
else
if ptC:getY() > -3000 then
return 'C=75;'
else
return 'C=120;'
end
end
end
WallData.GetChainSawStartAngs = GetChainSawStartAngs
---------------------------------------------------------------------
return WallData
+9
View File
@@ -0,0 +1,9 @@
-- %TABLE_NAME%.lua by Egaltech s.r.l. %DATE_TIME%
-- Gestione dati lavorazioni per Travi
-- Tabella per definizione modulo
local %TABLE_NAME% = {
}
---------------------------------------------------------------------
return %TABLE_NAME%