利用者:Ptk64/OpenSCAD
OpenSCAD 2015.03 | |
開発元 | Marius Kintel, Claire Wolf[1] |
---|---|
初版 | 2010年2月19日 |
最新版 |
2021.01[2]
/ 2021年1月31日 |
最新評価版 |
2021.04.05[3]
/ 2021年4月5日 |
プログラミング 言語 | C++ and Qt, CGAL, OpenCSG, and OpenGL [4] |
対応OS | Linux, macOS, Windows, FreeBSD, NetBSD, OpenBSD |
プラットフォーム | IA-32, x64,AArch64(ベータテスト中) |
サイズ | 15–25 MB (対象OSによる)[5] |
対応言語 | 7言語 |
対応言語一覧 Czech, English, French, German, Polish, Russian, Spanish, Magyar | |
種別 | CAD |
ライセンス | GPLv2 |
公式サイト |
www |
OpenSCADは、ソリッドモデリングによって3Dデータを作成するためのオープンソース(GNU GPL)の3次元CADソフトウェアである。独自の言語により記述されたスクリプトから3Dモデルを生成しプレビューすることができるが、スクリプトを介さずにマウス操作等で画面上のモデルを直接編集することはできない。 OpenSCADスクリプトは、プリミティブとよばれる基本的な立体(球、直方体、円柱など)を用意し、それを変形させ組み合わせる方法(和集合、差集合、共通部分等)を指定していくことで3Dモデルを構築する。 この手法を空間領域構成法(Constructive Solid Geometry, CSG)とよぶ。OpenSCADは2021年4月現在、 Windows 、 Linux 、 macOS、FreeBSD、NetBSD、OpenBSDで使用可能である。
プレビュー機能
[編集]OpenSCADはOpenCSGとOpenGLを使用しZバッファを使用することで3Dモデルを高速にプレビュー表示する。
プレビューでは他の3Dモデリングソフトウェアと同様に、マウスを使用してビュー内の3Dモデルの位置や向きを変えることができる。スクリプト内でデフォルトの「カメラ」の位置を設定することもでき、ビュー内でのパーツの色や透明度を指定することもできる。
プレビューは比較的高速なため、スクリプトの変更をインタラクティブに反映することができる。
OpenSCADのレンダラーは照明の機能も持つが、光源は固定され変更することはできない。
用途
[編集]OpenSCADを使用することで、パラメトリックモデリングにより幾何学的に正確な3Dモデルを作成でき、モデルはパラメータを変更することで簡単に調整することができる。 [6]
OpenSCADスクリプトはプレーンなASCIIテキストであり人間が読解可能な形で記載される。
このため、OpenSCADはプログラマー指向なソリッドモデリングツール[7]であり、研究や教育に使用される機材などのオープンソースハードウェアを設計するための初心者向けCADツールとして推奨される。 [8]
この用途では、多くの場合3Dプリンターで出力するためのパーツを設計するために使われ、モデルはSTL形式でエクスポートされる。
アニメーションを作成することも可能で、シンプルなモデルでは1秒あたり数コマ程度の速度で表示できる。アニメーションでは、カメラの位置やパーツの寸法、位置、形状、存在など、様々なパラメータを変更することができ、動画作成に使用可能な連続画像を保存することができる。
出力可能なフォーマット
[編集]- 3Dビューの表示をPNG形式でエクスポートできる。
- モデル作成に使用された2Dの図形はAutoCAD DXF形式でエクスポートできる。
- 3Dモデルは、 AMF 、 OFF 、 STL 形式でエクスポートできる。2016年7月現在、エクスポートされるモデルに 色、素材、パーツは反映されない。
入力可能なフォーマット
[編集]- DXF、SVG、PNG形式の2D図面をインポートし、押し出しや回転処理をして1つのパーツにすることができる。
- STL形式の3Dパーツをインポートでき、大きさを変更したり和集合や差集合をとることができる。
設計
[編集]OpenSCADはC++で開発されており、グラフィカルなユーザーインターフェイスとエディターが統合された、CSGエンジンのラッパーとなっている。 2016年現在、ベースとなるCSGエンジンとしてComputational Geometry Algorithms Library (CGAL)を使用している。
スクリプトの構文は、関数型プログラミングの考え方を反映している。 Haskell と同じようにスコープ内では「変数」は定数として扱われ、1つの値しかとらない。
脚注
[編集]外部リンク
[編集]- ウィキブックスには、OpenSCAD User Manualに関する解説書・教科書があります。
- Shapeoko wikiのOpenSCADのページ(英語):サポートユーティリティ、特殊なツール(ねじ生成など)へのリンクが含まれ、パラメーター化され大きさを簡単に再設定できる形で ”Circle Diamond Square” とよばれる、CNC切削機のテスト用データを作成する例がある。
- OpenSCADを使用したモデリングの基本に関するビデオ(フランス語)
関連するソフトウェア
[編集]- OpenJScad:Webインタフェースを持ちOpenSCADと部分的に互換性のあるスクリプト形式のパラメトリックモデリングソフトウェア。 JavaScriptで開発されている。
- ImplicitCAD:同様のスクリプト形式のモデラー。内部でオブジェクトモデルを持つ。OpenSCADと構文は似ているが互換性はない。 GUIはない。
- Rapcad:RepRapプロジェクトの3Dプリンタに向けたOpenSCADスタイルのスクリプト形式モデラー。変数が真に変数になっているなど機能の追加、変更がされている。
- Blockscad:ブラウザ上で、Scratchのようなブロック形式でOpenSCADスクリプトをビジュアルプログラミングできる実装。
[[Category:C++でプログラムされたフリーソフトウェア]] [[Category:3DCGソフトウェア]]
- ^ “Claire Wolf”. Template:Cite webの呼び出しエラー:引数 accessdate は必須です。
- ^ “OpenSCAD News”. Template:Cite webの呼び出しエラー:引数 accessdate は必須です。
- ^ “OpenSCAD Development Snapshots”. Template:Cite webの呼び出しエラー:引数 accessdate は必須です。
- ^ “Building OpenSCAD”. Template:Cite webの呼び出しエラー:引数 accessdate は必須です。
- ^ http://www.openscad.org/downloads.html
- ^ Evans, Brian (2012), Practical 3D Printers: The Science and Art of 3D Printing, Apress, p. 113, ISBN 9781430243922.
- ^ Pettis, Bre; France, Anna Kaziunas; Shergill, Jay (2012), Getting Started with MakerBot, O'Reilly Media, Inc., p. 131, ISBN 9781449338657.
- ^ Pearce, Joshua M. (2014), “Chapter 6: „Digital Designs and Scientific Hardware“”, Open-Source Lab: How to Build Your Own Hardware and Reduce Research Costs, Elsevier, pp. 165–254, ISBN 9780124104624.