【问题标题】:Creating a "cup" with polyhedra in openSCAD在 openSCAD 中用多面体创建一个“杯子”
【发布时间】:2016-01-14 07:33:58
【问题描述】:

我正在尝试使用八角棱镜(使用polyhedron 函数)创建一个“杯子”形状(一端开口的空心)。当我渲染我的代码时,OpenSCAD 不会渲染底面和内面。我做错了什么?

谢谢!

我的代码:

difference() {
    polyhedron(points = [ [21.5,51.9,0],[51.9,21.5,0],
    [-21.5,51.9,0],[-51.9,21.5,0],
    [-21.5,-51.9,0],[-51.9,-21.5,0],
    [21.5,-51.9,0],[51.9,-21.5,0],
    [21.5,51.9,100],[51.9,21.5,100],
    [-21.5,51.9,100],[-51.9,21.5,100],
    [-21.5,-51.9,100],[-51.9,-21.5,100],
    [21.5,-51.9,100],[51.9,-21.5,100] ], faces = [
    [0,1,9,8],[2,0,8,10],[3,2,10,11],[5,3,11,13],
    [4,5,13,12],[6,4,12,14],[7,6,14,15],[1,7,15,9],
    [0,1,7,6,4,5,3,2],[8,9,15,14,12,13,11,10] ]);

    polyhedron(points = [ [19,49.4,5],[49.4,19,5],
    [-19,49.4,5],[-49.4,19,5],
    [-19,-49.4,5],[-49.4,-19,5],
    [19,-49.4,5],[49.4,-19,5],
    [19,49.4,100],[49.4,19,100],
    [-19,49.4,100],[-49.4,19,100],
    [-19,-49.4,100],[-49.4,-19,100],
    [19,-49.4,100],[49.4,-19,100] ], faces = [
    [0,1,9,8],[2,0,8,10],[3,2,10,11],[5,3,11,13],
    [4,5,13,12],[6,4,12,14],[7,6,14,15],[1,7,15,9],
    [0,1,7,6,4,5,3,2],[8,9,15,14,12,13,11,10] ]);
}

我的渲染问题的图片:

【问题讨论】:

    标签: rendering openscad polyhedra


    【解决方案1】:

    如果您使用polyhedron(),则应始终检查面的方向,如下所述: documentation openscad

    你会看到,在这两种情况下,底面的方向都是错误的,这里是你的内部polyhedron()

    [2,3,5,4,6,7,1,0] 替换[0,1,7,6,4,5,3,2] 的底面,你就得到了你的杯子:

    【讨论】:

    • 谢谢!我还在学习,可能在构建这个时在 wiki 上阅读了 3-4 次,但不知何故它让我忘记了。
    猜你喜欢
    • 1970-01-01
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-29
    • 2014-02-26
    • 2015-06-04
    • 1970-01-01
    相关资源
    最近更新 更多