今週のざっくばらん
3Dプリンタ、二週目
3Dプリンタを入手して二週目に入りましたが、かなり慣れて来ました。ベルトを締めることによりクオリティが格段に向上したので、応用範囲が一気に広がりました。
うちに知り合いを招待した時に作ったのが、ワイングラスにつける名前付きのチャームです。立食だと、どれが誰のグラスだかがすぐに分からなくなってしまうので、それを防止する役目を果たします。今回はお互いが知り合いだったので、それほど重要ではありませんが、名札の代わりにもなります。
デザイン面で苦労したのは文字を読みやすくする部分でした。文字を盛り上げるデザインで一つ作ってみたのですが、とても読みにくかったので、逆に文字を抜いてしまうことで読みやすくしました。
機能面では、ワイングラスにちょうどひっかかる大きさにする部分が試行錯誤でした。写真では分かりませんが、ワイングラスにひっかかる部分はただの円筒ではなく、円錐で、それも適度な角度に斜めに傾けています。
次に作ったのが、台所の水道の蛇口の位置を調節するためのパイプです。この蛇口はホースの先についているため、シンクを洗う時には引っ張り出して使えるのが便利なのですが、収納した時の位置が手元から遠いので使い勝手が悪かったのです。そこでちょうど良い場所に固定できるようなパイプを作ったのです。両端を僅かに開き、そこに押し込むことにより固定するように設計しました。
このぐらいの大きさ(直径3センチ強、長さ15センチ)になると、プリントするのに7時間ほどかかるので失敗は許されません。そのため、テストで短いものをいくつか作ってサイズがフィットすることを確認してから、夜中にプリントしました。朝起きて、ジャストフィットであることを確認出来た時は、ほっとしました。
上の二つほど実用的ではありませんが、Tesla のロゴ入りのゴルフのボールマーカーを作ってみました。
ちなみに、これをデザインするのは、TinkerCADでは無理でした。微妙なカーブを作ることが出来ないのです。
そこでより自由度が高く、かつ、TinkerCAD のようにプログラムでデザインが出来るツールを探していたところ、ShapeScriptというツールを見つけました。ロンドンに住むNick Lockwoodというエンジニアが一人で作っているようですが、私の「プログラムを使って、複雑な3Dモデリングが可能」というニーズをしっかりと満たしてくれるツールです。
言語は ShapeScript と呼ばれる独自の言語ですが、非常にシンプルですぐに理解できます。専用のエディターがついていないため、Autocomplete がないなどの欠点はありますが、致命的ではありません。アプリ(macOS のみ)は無料でダウンロード出来ますが、3Dプリンタ向けに STL ファイルでエクスポートするには、$10 の有料オプションを購入する必要がありますが、その価値は十分にあります。
アプリにはスクリプト・エディタが付いていないので、私は Microsoft Visual Studio Code を使いました。エディターからスクリプトファイルをアップデートすると、アプリが自動的に3Dモデルもアップデートしてくれるので、とても便利です。3D空間内でオブジェクトを編集しなければならない Blender や Maya と比べると、圧倒的に便利です。
TinkerCAD と比べると、少し難しいので小学生には無理だと思いますが、中高生にはちょうど良いプログラミング環境だと思います。私が中高生にプログラミングを教えるのであれば、ShapeScript でデザインしたものを3Dプリンタで出力する、という一連の作業をしてもらうことにより、プログラミングの楽しさ、テクノロジーの素晴らしさを実感してもらいます。
ShapeScript を使うもう一つのメリットは、Github を使ってバージョン管理やシェアが出来ることです。とりあえず、作ったものを公開する場所(Github ではリポジトリと呼びます)を作りました(
https://github.com/SingularitySociety/free-3d-models)。このリポジトリにアクセスすれば(ブラウザーからもアクセスですが、"git clone" を使って、自分のパソコンにリポジトリごとコピーするともっと自由度が広まります)。
ちょっとしたパズルも作ってみたかったので、題材をネットで探したところ、岩沢宏和さんいう方(パズル業界では有名な方で、私も彼が翻訳した書籍を読んだことがあります)が作った「Apparently Impossible Cube」というものが見つかったので、作ってみました。デザインはとてもシンプルで、この4つのピースを組み合わせて立方体を作るというものです。簡単そうに見えて難しいところが、よく出来たパズルです。
組み合わせるとこうなります。
この記事は約
NaN 分で読めます(
NaN 文字 / 画像
NaN
枚)