経緯
3Dプリンタを買って、自分で3Dモデルを作りたいと思ったけど、CADソフトの操作性が難しいのと、3Dモデルをイメージするのが難しくて、挫折したので、コードで3Dモデルをつくるアプローチに変更^^;
しかし、OpenSCADだけだと、オブジェクト間の位置関係の指定がもっと難しかったので、偶然見つけたBOSL2を使ってみた結果、非常に良かったので。
OpenSCAD
3Dモデルをコードでかける言語+ソフトウェア。
BOSL2
OpenSCAD用拡張ライブラリ
- https://github.com/revarbat/BOSL2
- Wiki: https://github.com/revarbat/BOSL2/wiki
- Cheatsheet: https://github.com/revarbat/BOSL2/wiki/CheatSheet
なぜ、OpenSCAD+BOSL2か?
OpenSCADについても、BOSL2についても、3Dモデルについても、初心者なので間違っているかもしれません。その際はご容赦&ご指摘ください。
OpenSCADが使いにくいところ(個人的意見です!!)
- 部品群が(デフォルトだと)あまりない
- 座標の指定が空間をイメージできない初心者には難しい
BOSL2がいいところ
- ネジなどのいろんなオブジェクトが揃っている
- 位置指定方法が豊富
- あるオブジェクトに対して、相対的に位置を指定できる
- 面取り処理がminkowski()関数のように難しくない
- もっと色々あると思いますが…
あるオブジェクトに対する、相対位置関係を指定してオブジェクトを位置決めする
include <BOSL2/std.scad>
cuboid([10,15,20]) {
attach(TOP) cuboid([5,7,10]);
}
include <BOSL2/std.scad>
cuboid([10,15,20]) {
attach(TOP) cuboid([5,7,10],anchor=RIGHT);
}
BOSL2使うならこれやっとけ!!
- ネジとか蟻継ぎのようなダボ?みたいなかみ合わせの部品を使う場合は、キャリブレーションオブジェクトを印刷して、かみ合わせ用の変数$slopを決定する
- キャリブレーションは以下のモデルを3Dプリントして、決定する
- (ちなみに、私のPrusa i3 MK3S+でPETGを印刷すると0.00でちょっときつめ、0.05でゆるめだったので、$slop=0.03にしています。PLAだと未設定(0.00?)でぴったりでした。)