0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

OpenSCADでうんこを作る

Posted at

OpenSCADはスクリプトで3Dモデルを作成するモデリングソフトウェアです。translate([-5, 12, 0.5]) cube(5); のようなスクリプトで3Dモデルを定義できます。

image.png

主な用途は3Dプリンタで出力するようなソリッドモデルの作成です。今回はOpenSCADで うんこ を作成します。

うんこ

うんこの形は様々ですが、アニメや漫画でよく用いられるのが渦巻き模様のうんこ通称うずまきうんこです。

💩

今回はこのうずまきうんこをOpenSCADでモデリングします。

作っていく

うんこの下の楕円柱部分を作成します。

OpenSCADで用意されてるプリミティブな立体はポリゴンか円柱、正六面体等のべーシックなもののみで楕円柱となるエッジが楕円な円柱は用意されていません。なので回転押し出しという手法で楕円柱を定義します。

まずは回転させるための平面を作成します。

image.png

square(10);
translate([10, 5, 0]) scale([2, 1, 1]) circle(5);

これをrotate_extrudeで回転押し出しすると楕円柱となります。

image.png

rotate_extrude() {
    square(10);
    translate([10, 5, 0]) scale([2, 1, 1]) circle(5);
}

これをforで三段重ねにしましょう。

image.png

for (n = [0:2]) {
    translate ([0, 0, n * 10]) scale([1 - n * 0.15, 1 - n * 0.15, 1]) {
        rotate_extrude() {
            square(10);
            translate([10, 5, 0]) scale([2, 1, 1]) circle(5);
        }
    }
}

cylinderで頭頂部の円錐をつけて完成。

image.png

for (n = [0:2]) {
    translate ([0, 0, n * 10]) scale([1 - n * 0.15, 1 - n * 0.15, 1]) {
        rotate_extrude() {
            square(10);
            translate([10, 5, 0]) scale([2, 1, 1]) circle(5);
        }
    }
}

translate([0, 0, 30]) cylinder(h=10, r1=5, r2=0);
0
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?