#!/usr/bin/env python3 import glob import os import sys sys.path.append("/usr/lib/freecad/lib") try: import FreeCAD import Mesh import Part except ValueError as err: print(err) def step2stl(step_file): (name, _) = os.path.splitext(step_file) part_name = "".join(s.title() for s in os.path.basename(name).split("_")) stl_name = name + ".stl" shape = Part.Shape() shape.read(step_file) doc = FreeCAD.newDocument("Doc") pf = doc.addObject("Part::Feature", part_name) pf.Shape = shape Mesh.export([pf], stl_name) print("Generated ", stl_name) def main(argv): for g in argv[1:]: for step_file in glob.glob(g): step2stl(step_file) if __name__ == "__main__": main(sys.argv)