OpenSCADはスクリプトで3Dモデルを作成するモデリングソフトウェアです。translate([-5, 12, 0.5]) cube(5);
のようなスクリプトで3Dモデルを定義できます。
主な用途は3Dプリンタで出力するようなソリッドモデルの作成です。今回はOpenSCADで うんこ を作成します。
うんこ
うんこの形は様々ですが、アニメや漫画でよく用いられるのが渦巻き模様のうんこ通称うずまきうんこです。
💩
今回はこのうずまきうんこをOpenSCADでモデリングします。
作っていく
うんこの下の楕円柱部分を作成します。
OpenSCADで用意されてるプリミティブな立体はポリゴンか円柱、正六面体等のべーシックなもののみで楕円柱となるエッジが楕円な円柱は用意されていません。なので回転押し出し
という手法で楕円柱を定義します。
まずは回転させるための平面を作成します。
square(10);
translate([10, 5, 0]) scale([2, 1, 1]) circle(5);
これをrotate_extrude
で回転押し出しすると楕円柱となります。
rotate_extrude() {
square(10);
translate([10, 5, 0]) scale([2, 1, 1]) circle(5);
}
これをfor
で三段重ねにしましょう。
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
で頭頂部の円錐をつけて完成。
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);