Files
2025-09-16 12:11:22 +02:00

80 lines
4.9 KiB
Lua

-- 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