Files
egwwindowlua/CAMAuto/LuaLibs/FeatureData.lua
T
andrea.villa 28e38b0441 - Lavorazione profili nella fase opportuna
- Migliorie varie
2024-06-21 17:15:37 +02:00

67 lines
2.3 KiB
Lua

-- FeatureData.lua by Egalware s.r.l. 2024/06/18
-- Libreria lettura o calcolo dati e proprietà della feature
-- Tabella per definizione modulo
local FeatureData = {}
-- Carico i dati globali
local WinData = require( 'WinData')
-------------------------------------------------------------------------------------------------------------
-- Recupero dati foro
function FeatureData.GetDrillingData( Proc)
local bOk, ptCentre, vtDir, dRadius = EgtCurveIsACircle( Proc.id)
Proc.dDiam = dRadius * 2
Proc.dLen = abs( EgtCurveThickness( Proc.id)) or 0
Proc.ptCentre = ptCentre
Proc.vtDir = vtDir
return Proc
end
-------------------------------------------------------------------------------------------------------------
-- Recupero dati taglio
function FeatureData.GetCuttingData( Proc)
return Proc
end
-------------------------------------------------------------------------------------------------------------
-- Recupero dati foro
function FeatureData.GetPocketingData( Proc)
return Proc
end
-------------------------------------------------------------------------------------------------------------
-- Recupero dati foro
function FeatureData.GetMillingData( Proc)
return Proc
end
-------------------------------------------------------------------------------------------------------------
-- Recupero dati profilatura
function FeatureData.GetProfilingData( Proc)
-- recupero utensili
Proc.nToolsToUse = EgtGetInfo( Proc.id, 'NTOOLS', 'i') or 0
Proc.sEntityName = EgtGetInfo( Proc.id, 'N', 's') or nil
Proc.bHeadProfile = Proc.sEntityName == 'Left' or Proc.sEntityName == 'Right'
Proc.bSideProfile = Proc.sEntityName == 'In' or Proc.sEntityName == 'Out'
Proc.Tools = {}
for t = 1, Proc.nToolsToUse do
local Data = {}
Data.sName = EgtGetInfo( Proc.id, 'TOOL_NAME_' .. tostring(t), 's') or 0
Data.dRadialOffset = EgtGetInfo( Proc.id, 'OFFR_' .. tostring(t), 'd') or 0
Data.dLongitudinalOffset = EgtGetInfo( Proc.id, 'OFFL_' .. tostring(t), 'd') or 0
table.insert( Proc.Tools, Data)
end
Proc.ProfileType = EgtGetInfo( Proc.id, 'ProfileType', 's') or ''
return Proc
end
-------------------------------------------------------------------------------------------------------------
return FeatureData