我需要在python上处理openscad程序。我使用实体库(https://solidpython.readthedocs.io/en/latest/index.html),但是在处理后没有找到任何方法来保存数据。例

from solid import *
d = difference()(
   cube(10),
   sphere(15)
)


我需要将d变量保存到stl文件。这该怎么做?而且,如果有更好的库,我需要建议最好使用哪种库。

最佳答案

您需要openscad将数据导出为stl文件。您可以从python代码执行此操作:

from solid import *
# to run  openscad
from subprocess import run

d = difference()(
   cube(10),
   sphere(15)
)

# generate valid openscad code and store it in file
scad_render_to_file(d, 'd.scad')

# run openscad and export to stl
run(["openscad", "-o",  "d.stl", "d.scad"])


除了最后一步,您可以在openscad中打开d.scad,进行渲染(按F6键)并将其导出为STL或在控制台中运行:

openscad -o d.stl d.scad


从命令行使用openscad请参见documentation

关于python - python固体处理后如何将数据保存在STL文件中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54040390/

10-09 00:09