Script21_ReportGenerator.lua
-- Lua example for Autodesk Netfabb 2019.1
-- The scripts shows how to generate reports for parts in the tray
system:setloggingtooglwindow(true)
insertMeshesIntoTable = function(meshgroup, Outtable)
for mesh_index = 0, meshgroup.meshcount - 1 do
local traymesh = meshgroup:getmesh(mesh_index)
table.insert(Outtable, traymesh)
end
for group_index = 0, meshgroup.groupcount - 1 do
subgroup = meshgroup:getsubgroup(group_index)
insertMeshesIntoTable(subgroup, Outtable)
end
end
function createReportsForMeshesInTray(traypar)
root = traypar.root
local meshes = {}
insertMeshesIntoTable(root, meshes)
local snapshot = system:createsnapshotcreator()
local reportgenerator = system:createreportgenerator(snapshot)
for i, traymesh in pairs(meshes) do
reportgenerator:createreportformesh(
traymesh,
"Reports\\netfabb_Part_Analysis.odt",
"D:\\LUAReport" .. tostring(i) .. ".odt"
)
end
return true
end
function createReportForTray(traypar)
local snapshot = system:createsnapshotcreator()
local reportgenerator = system:createreportgenerator(snapshot)
reportgenerator:createreportfortray(tray, 'Reports\\netfabb_Platform_Views.odt', 'D:\\LUAReportPlatform.odt');
return true
end
createReportsForMeshesInTray(tray)
createReportForTray(tray)