在 OpenSCAD 中将扭曲和缩放指定为线性拉伸的函数

问题描述 投票:0回答:1

令我有点惊讶的是,我找不到将

linear_extrusion()
函数的缩放和扭曲参数指定为函数本身的选项。但只能作为标量或向量。这是一个相当严重的限制。考虑到 OpenSCAD 建模所采用的数学方法,这让我感到惊讶。

我错过了什么吗?

目前我必须使用循环作为解决方法。它创建 1000 个相同形状的实体,每次迭代时这些实体都会稍微挤压、扭曲和缩放。这有效,在预览中创建一个可用的表面。但是渲染挂起,SDL 导出也挂起,我只能假设这是由于我创建的实体数量所致?

还有其他解决方法或替代方案吗?

我发现了

linear_extrude_fs()
linear_extrude_ft()
的实现试图实现这一点,但内部使用了相同的解决方法。另外,这是一个“丑陋”的解决方案,因为由于编译器解析,我必须为每次形状或参数的修改直接修改该模块。

function parameters parameter-passing cad openscad
1个回答
0
投票
linear_extrude(height = 50, center = true, convexity = 10, twist = -110, slices = 20, scale = 10.0, $fn = 16)
translate([2, 0, 0])
circle(r = 1);

您可以在此页面中找到更多示例: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/2D_to_3D_Extrusion

黑客快乐!

© www.soinside.com 2019 - 2024. All rights reserved.