gpt4 book ai didi

python - 如何在solidpython中设置特殊变量$fa、$fs、$fn

转载 作者:太空宇宙 更新时间:2023-11-03 21:23:09 31 4
gpt4 key购买 nike

a previous thread显示了如何通过 SolidPython 创建 3D 实体并将其保存到 STL 文件。由于 $fa、$fs、$fn 未设置,因此它们具有默认值,并且 3D 体的面数较少。上面线程中的示例代码:

from solid import *
from subprocess import run

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

scad_render_to_file(d, 'd.scad')

run(["openscad", "-o", "d.stl", "d.scad"])

这里是生成的 STL-body enter image description heredocumentation我没有找到任何有关设置这些变量的信息。 This readme似乎已经过时了。

如何在solidpython中设置$fa、$fs、$fn?

最佳答案

有两种方法可以做到这一点。

在solidpython中,一些对象(例如circle()sphere()cylindrical())具有可选参数对应openscad中$fn的segments,参见solidpython包中objects.py文件中的源代码(在archlinux/usr/lib/python/site-packages/solid/objects .py)。

可能的solidpython代码:

sphere(15, segments = 180)

生成的 openscad 代码:

sphere($fn = 180, r = 15);

或者可以在scad_render_to_file()中设置文件头,请参阅solidpython包中的solidpython.py文件中的源代码。

solidpython 代码:

scad_render_to_file(d, 'd.scad', file_header = '$fa = 0.1;\n$fs = 0.1;', include_orig_code=True)

将这些行写入 openscad 文件的顶部:

$fa = 0.1;
$fs = 0.1;

这是示例中生成的 STL enter image description here

关于python - 如何在solidpython中设置特殊变量$fa、$fs、$fn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54073851/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com