OpenSCAD - 来自轴的圆柱体

OpenSCAD - Cylinder from axis

我怎样才能创建这个形状?所描绘的形状可以解释为以下之一:

  1. 圆锥体变成一条线而不是一个点。
  2. 从圆到直线的阁楼。
  3. 从圆到正方形的放样[0,1].
  4. 一侧被挤压的圆柱体。

-- 圆面上的曲线对于精度来说是理想的,但并非绝对必要。

OpenSCAD 中的近似值using this code

在 Fusion360 中实现的形状:

我了解到您可以使用船体做凸面放样。

module pinch(h=1,r1=1,r2=1,r3=0) {
    zero = 0.00000000001;
    steps = $fn ? $fn : $fa;
    res = h/steps;
    r1 = r1 ? r1 : res;
    r2 = r2 ? r2 : res;
    r3 = r3 ? r3 : zero;
    hull() {
        cylinder(h=zero,r=r1,r2=res,r3=0,center=false);
        translate([-r2, -r3, h - zero]) cube([
            r2 * 2,
            r3 * 2,
            zero
        ]);
    }
}

translate([1,0,.5]) rotate([0,-90,0]) pinch(1, .5, .5, $fn=50);

您可以简单地挤出一个圆并在挤​​出长度上将其缩放为一条平线。比例参数 s. documentation linear_extrude 的可以是标量或具有 x 和 y 比例因子的向量。将其中一个设置为1,另一个设置为0:

$fs = 0.01;
$fa = 0.01;

linear_extrude(height = 15, scale =[0, 1]) circle(d = 10);

结果: