998624035b
- migliorato ordinamento fori - riunite FindMilling, .... in una unica libreria - altre piccole migliorie.
81 lines
2.4 KiB
Lua
81 lines
2.4 KiB
Lua
-- MachiningLib.lua by Egaltech s.r.l. 2019/04/26
|
|
-- Libreria ricerca lavorazioni per Travi
|
|
|
|
-- Tabella per definizione modulo
|
|
local MachiningLib = {}
|
|
|
|
-- Include
|
|
require( 'EgtBase')
|
|
|
|
EgtOutLog( ' MachiningLib started', 1)
|
|
|
|
-- Dati
|
|
local BD = require( 'BeamData')
|
|
local Cuttings = require( 'CutData')
|
|
local Millings = require( 'MillingData')
|
|
local Pocketings = require( 'PocketingData')
|
|
local Sawings = require( 'SawingData')
|
|
local Drillings = require( 'DrillData')
|
|
|
|
---------------------------------------------------------------------
|
|
function MachiningLib.FindCutting( sType)
|
|
for i = 1, #Cuttings do
|
|
local Cutting = Cuttings[i]
|
|
if Cutting.Type == sType then
|
|
return Cutting.Name
|
|
end
|
|
end
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function MachiningLib.FindMilling( sType)
|
|
for i = 1, #Millings do
|
|
local Milling = Millings[i]
|
|
if Milling.Type == sType then
|
|
return Milling.Name
|
|
end
|
|
end
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function MachiningLib.FindPocketing( sType)
|
|
for i = 1, #Pocketings do
|
|
local Pocketing = Pocketings[i]
|
|
if Pocketing.Type == sType then
|
|
return Pocketing.Name
|
|
end
|
|
end
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function MachiningLib.FindSawing( sType)
|
|
for i = 1, #Sawings do
|
|
local Sawing = Sawings[i]
|
|
if Sawing.Type == sType then
|
|
return Sawing.Name
|
|
end
|
|
end
|
|
|
|
end
|
|
|
|
---------------------------------------------------------------------
|
|
function MachiningLib.FindDrilling( dDiam)
|
|
-- ricerca sulle forature, dal diametro maggiore al minore
|
|
for i = #Drillings, 1, -1 do
|
|
local Drilling = Drillings[i]
|
|
if ( Drilling.Type == 'Drill' and Drilling.Diam < dDiam + 10 * GEO.EPS_SMALL and Drilling.Diam > dDiam - BD.DRILL_TOL - 10 * GEO.EPS_SMALL) then
|
|
return Drilling.Name, Drilling.Type, Drilling.MaxMat
|
|
end
|
|
end
|
|
-- ricerca sulle svuotature, dal diametro maggiore al minore
|
|
for i = #Drillings, 1, -1 do
|
|
local Drilling = Drillings[i]
|
|
if ( Drilling.Type == 'Pocket' and dDiam > Drilling.Diam + 10 * GEO.EPS_SMALL) then
|
|
return Drilling.Name, Drilling.Type, Drilling.MaxMat
|
|
end
|
|
end
|
|
end
|
|
|
|
-------------------------------------------------------------------------------------------------------------
|
|
return MachiningLib
|