如何在OpenSCAD中修改导入的.stl文件?

时间:2013-10-23 23:57:21

标签: openscad

是否有将STL文件导入OpenSCAD且能够修改它们?

例如,以下代码演示了我到目前为止所尝试的内容:

difference() {
    import("spherical_puzzle_base.stl");
    translate([0, 0, -RADIUS/2]) {
        cube([RADIUS*2, RADIUS*2, RADIUS], center=true);
    }
}

当我这样做时,我可以点击F5来渲染仅包含不包含交集的STL文件。或者我可以点击F6进行编译和渲染,但它会创建一个非常混乱的渲染,没有接近多方面,甚至接近我对此事的预期。使用OpenSCAD是否有解决此问题的方法?谢谢!

(我试图这样做以节省很长的渲染时间,特别是当我测试各种设计可能性时)

2 个答案:

答案 0 :(得分:1)

我不确定是否可以通过布尔运算修改stl模型。 openscad中的布尔运算是csg建模的一部分。仅使用csg'原始实体'作为' cube',' sphere',' cylinder'或者'多面体'可以合并。

要在openscad中验证2014.01.29,我试过这个:

translate([10,10,0]) polyhedron( points=[ [10,10,0],[10,-10,0],[-10,-10,0],[-10,10,0,[0,0,10]],
triangles=[ [0,1,4],[1,2,4],[2,3,4],[3,0,4],[1,0,3],[2,1,3]]
);

export as' polyhedron.stl' 然后:

difference() {
    import("polyhedron.stl"); 
    translate([5,5,0]) cube([10,10,10]); 
}

我得到了正确的结果(与其他更复杂的stl一样),我可以将它们导出到有效的stl文件。 只有在openscad的屏幕上,一些面孔似乎是透明的或损坏的。所以我认为,openscad将布尔运算中的stl文件视为多面体'你可以用自己的方式修改你的stl。

答案 1 :(得分:0)

我同意@ a_manthey_67。我已经使用最新的OpenSCAD和非常复杂的STL文件(如Sappho's Head)成功完成了布尔操作。渲染需要很长时间,但是我已经将大型STL文件分成了许多不同的部分,并通过翻译和其他操作来处理这些部分。