FreeCAD

**FreeCAD**はオープンソース(LGPLライセンス)の汎用3D CAD モデラーである。主に機械工学やプロダクトデザイン向けであるが、それにとどまらず建築やその他の専門分野など工学全般での利用に適している。

## 概要

FreeCADはCATIA、Creo、Autodesk Inventor、SolidWorks やSolid Edgeなどに類似したツールを備えており、、PLM、とCAEに分類される。
コアシステムを変更せずに機能を追加することが可能なモジュラソフトウェア・アーキテクチャを採用しており、フィーチャーベースのパラメトリックなモデラー(ソリッドモデリングのモデラー)である。

（Blenderなどの3DCGソフトウェアに見られるような）CGアニメーションや、（Maya、3ds MaxまたはCinema 4Dのように）サブディビジョンサーフェス等の有機的な形状は対象とはしていない。
しかしながらその高い拡張性によって将来的には現在対象としている分野よりも広い分野で利用可能なものになる可能性がある。

## ソフトウェア開発
FreeCADの開発は科学技術計算分野のオープンソース・ライブラリを利用して行われている。利用されているライブラリには、（強力なCADカーネルである）Open Cascade テクノロジー、（Open Inventorクーロンの）、Qt GUI Frameworkやスクリプト言語Pythonなどがある。またFreeCAD自体を他のプログラムからライブラリとして使うことも可能である。
### 機能拡張
機能拡張はSWIGとPythonを応用したモジュラソフトウェア・アーキテクチャ技術に基づいており、Pythonで記述することが可能である。
拡張の例として、建設・土木()セクターにFreeCADを取り込み、BIM機能をArchモジュールに加える動きがあり、IFCファイルからインポートする部分的なサポートもある。

## 機能

### ワークベンチ
FreeCADでは各機能はワークベンチと呼ばれるグループに分けられている。ワークベンチには以下の様なものがある（アルファベット順）。

#### アセンブリー・ワークベンチ
パートデザイン・ワークベンチやパートワーク・ベンチで作成した形状を部品として使って全体の形状を組み立てることができる。

#### BIMワークベンチ
3次元の建築構造物のモデリングに特化したワークベンチで、あらかじめ壁、屋根、窓、設備、構造材などがオブジェクトとして用意されている。旧バージョンでは「建築ワークベンチ」の名称だった。

#### CAMワークベンチ
FreeCADで作成したモデルからを作成するためのワークベンチである。CNC（コンピュータ数値制御）工作機械で実際の工作物を作成するために必要な切削パスの作成、切削シミュレーション、Gコード出力が可能である。旧バージョンでは「パス・ワークベンチ」の名称だった。

#### ドラフト・ワークベンチ
2次元の製図を行うためのワークベンチである。

#### FEMワークベンチ
作成した立体形状に対して計算用の3次元メッシュ分割、有限要素法を用いた応力解析、解析結果の可視化を行うことができる。

#### インスペクション・ワークベンチ

#### マテリアル・ワークベンチ

#### メッシュ・ワークベンチ
作成した立体形状に対して、粗密を調整してサーフェスメッシュを作成することができる。作成したメッシュはSTL、PLYなどの形式でエクスポートすることが可能。また逆にSTL、PLYなどの形式のファイルからインポートしたメッシュを取り扱うこともできる。旧バージョンでは「メッシュデザイン・ワークベンチ」の名称だった。

#### OpenSCADワークベンチ
テキストベースCADであるOpenSCADのデータを操作できる。

#### パートデザイン・ワークベンチ
2次元のスケッチ平面に円弧、直線を描き、それらに寸法拘束、幾何拘束をかけることで複雑な形状のスケッチを作図できる。作図したスケッチは押し出しを行なって立体形状にすることが可能。またその様にして作成した立体形状に対して角の丸め、面取りなどを行なうための機能もある。


File:FreeCAD PartDesign Sketch.png|スケッチの例
File:FreeCAD PartDesign Pad.png|押し出しによる立体作成の例


#### パート・ワークベンチ
プリミティブを作成し、複数のプリミティブから論理集合(ブーリアン演算, 空間領域構成法)をとることで立体形状を作成することができる。またスケッチャー・ワークベンチで作成したスケッチを使用してスイープ、ロフトなどの操作によって立体形状を作成することもできる。

#### 点群ワークベンチ

#### リバースエンジニアリング・ワークベンチ

#### ロボット・ワークベンチ
産業用ロボットアームの使用を計画するワークベンチである。

#### スケッチャー・ワークベンチ
パートデザイン・ワークベンチと同様に2次元のスケッチ平面に円弧、直線を描き、それらに寸法拘束、幾何拘束をかけることで複雑な形状のスケッチを作図できる。作成したスケッチはパート・ワークベンチを使用して3次元化したり、ドラフト・ワークベンチを使用して2次元製図オブジェクト化することが可能。

#### スプレッドシート・ワークベンチ
スプレッドシートの機能を有するワークベンチであり、FreeCAD上で、表計算を行ったり、部品表のような表組を作成する。

#### サーフェス・ワークベンチ

#### テックドロー・ワークベンチ
他のワークベンチで作成した3次元形状を使用して製作図のような2次元の投影図を作成することができるワークベンチである。2次元図面化後に寸法や説明、ハッチングなどを追加することができる。
バージョン0.16までドローイング・ワークベンチと呼ばれていたワークベンチを刷新し機能強化が行われている。

### 以前存在したワークベンチ

#### レイトレーシング・ワークベンチ
POV-Ray用、LuxRender用の入力ファイルをそれぞれエクスポートすることができる。POV-Ray、LuxRenderでエクスポートしたファイルをレンダリングすることによってレイトレーシングに基づいた3次元画像の描画が可能である。

現在は新規のレンダー・ワークベンチがアドオンとして提供されている。

#### ドローイング・ワークベンチ
2次元の投影図を作成することができるワークベンチである。バージョン0.17からは同様の機能でさらに高機能なテックドロー・ワークベンチが追加されたため現在は廃止されている。

#### イメージ・ワークベンチ

#### プロット・ワークベンチ

現在はアドオンとして提供されている。

#### 船舶ワークベンチ

現在はアドオンとして提供されている。

### 一般機能
ワークベンチとは別に汎用で以下の様な機能もある。

#### ファイルのインポート・エクスポート
IGESやSTEP、DXF、DWG、IFCなどのCAD形式、STLやObj、PLYなどのメッシュ形式、COLLADAやVRML、WebGL(HTML5)などの表示用データ形式、その他OpenSCADやPOV-Ray、などの各種アプリケーション向けのファイル形式をサポートしている。

#### マクロ機能
FreeCADのマクロ機能は一連のGUI操作を記録してスクリプト化をする。マクロ言語としてはスクリプト言語Pythonを採用している。よく利用する機能をあらかじめテキストエディタでスクリプトに記述し、それをインタープリタにて実行することも可能である。

### スクリーンショット

Image:Freecad screenshot -- The whippet.jpg
Image:Freecad screenshot -- Chain adjuster.jpg
Image:Freecad screenshot -- Draft module.jpg
Image:Freecad screenshot -- Engine by bejant.jpg
Image:Freecad screenshot -- Roof system.jpg
Image:Freecad screenshot -- Projections in FreeCAD 0.14.png
Image:Freecad screenshot -- Engine by psi13art.jpg
Image:Freecad screenshot -- Rockn house (out).png
Image:Freecad screenshot -- Steam loco frame.jpg
Image:FreeCAD r4739 Mesh pot.png|FreeCAD 0.12によるポリゴンメッシュを用いた容器の3Dモデル
Image:Loudspeaker freecad.png|FreeCAD 0.13によるスピーカーユニットの3Dモデル


## 関連項目

* Open Cascade テクノロジー
* パラメトリック方程式
* 測域センサ
* 有限要素法
* 境界要素法
* 形体
* 形体に基づいた幾何学手法 (Feature-based geometric approaches)
* 形体に基づいた手法 (Feature-based approach)
* 形体に基づいたメソッド (Feature-based methods)
* 

## 参考文献

*
*
*
*
*
*
*

## 脚注

## 外部リンク

*  ・・・
* 
* FreeCADのオンラインヘルプ
* 
* 
* 
*