openscad 3D操作

3D建模中,我们往往涉的单个模型都不是简单规则的球形或者长方体.
在openscad中, 我们可以通过几何变换图形的 交并差 操作 来得到.

在几何变换上, 除了我们之前讲到的 translate 3维移动, 和retate 3维旋转. openscad还提供了 resize 可以提供3维的伸缩变形.

看下面的例子:

wheel_radius = 8;
base_height = 8;
top_height = 10;
track = 28;
wheel_width = 4;
body_roll = 0;
wheels_turn = -20;
rotate([body_roll,0,0]) {
    // Car body base
    resize([90,20,12])
        sphere(r=10);
    // Car body top
    translate([10,0,5])
        resize([50,15,15])
        sphere(r=10);
}

在这里插入图片描述
虽然几何变换很美,但是更实用的几何图形往往需要 图形的 交并差 运算得到,

在openscad中,实用 intersection 来提供交运算

sphere(r=10);
translate([12,0,0])
    sphere(r=10);
translate([0,-12,0])
    sphere(r=10);

在这里插入图片描述

intersection() {
    sphere(r=10);
    translate([12,0,0])
        sphere(r=10);
    translate([0,-12,0])
        sphere(r=10);
}

交运算得到:
在这里插入图片描述

difference() {
    sphere(r=10);
    translate([12,0,0])
        sphere(r=10);
    translate([0,-12,0])
        sphere(r=10);
}

差运算得到:
在这里插入图片描述

union() {
    sphere(r=10);
    translate([12,0,0])
        sphere(r=10);
    translate([0,-12,0])
        sphere(r=10);
}

并运算得到:
在这里插入图片描述
通过这个操作,基本就吃定了3维建模,剩下的99都是我们的汗水啦!!!

© 版权声明
THE END
喜欢就支持一下吧
点赞159 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容