ここではGmshを使った3Dモデルの作成を行います。
Gmshのインストール
公式HPへアクセスします。
Download の項目から各OSに対応したzipファイルをダウンロードします(執筆時点での最新版は 4.6.0 )。 Windows版では、ダウンロードしたzipファイルを展開し、お好みの場所に入れればインストール完了です。 個人的には管理者権限不要で使用できる点が非常に魅力的です。
起動と終了
アイコンをダブルクリックで起動します。
画面が表示されたら、右上の×印か、[File]-[Quit]で終了します。
コマンドラインからの使用については別途書こうと思います。
モデルを作る
ファイルを作る
起動直後は 「untitled.geo」 というファイル名になっています。まずは[File]-[New]から新しいファイルを作ります。適当なファイル名を入れ、拡張子は「.geo」にしておきましょう。 保存しようとすると、カーネル選択のダイアログボックスが出てくるので、「OpenCASCADE」を選択します。
「OpenCASCADE」はとりあえずおまじないと思っておけばよいでしょうか。この中身についてもいつか深堀りしていきたいと思います。
モデル構成要素
3Dのモデルを作っていきます。
モデルは、点(Point)、線(Curve)、面(Surface)、体積(Volume)の要素から構成されています。 下図の例では、8つの点、12の線、6つの面、1つの体積から構成されます。
点を作る
[Modules]-[Geometry]-[Elementary entities]-[Add]-[Point] を選択すると、座標を入力するコンテキストが表示されるので、X, Y, Z の座標を入力し、「Add」ボタンを押します。
点が1つ追加されました。
「Prescribed mesh size at point」はメッシュを作る際の、メッシュの細かさに影響します。とりあえずデフォルトの数値にしておきます。
線を作る
点を2つ作成します。
[Modules]-[Geometry]-[Elementary entities]-[Add]-[Line]を選択します。
線を引く2点をクリックで選択します。まず始点となる点を選択すると、点が赤くなります。次に終点を選択すると2点間に線ができます。
続けて線を引く場合は、そのまま次の始点-終点を選択することで、連続して線を引くことができます。 点の選択を間違えた場合はキーボード「u」で取り消し、キーボード「q」で線の作成を終了します。
面を作る
線をつなげてループを作ります。下図の例では四角形ですが、どんな形でも構いません。この状態は枠のみであり、面はありません。
[Modules]-[Geometry]-[Elementary entities]-[Add]-[Plane surface]を選択します。
面を作るループを選択します。線を選択すると赤くなるので、赤い線がループ状になるように選択します。(連続することが明らかな線は自動で選択(赤くなる)されます)
キーボード「e」を押すとループ中央付近に交差する破線が現れます。これで面ができました。
キーボード「q」で終了します。
体積を作る
面を複数枚作成し、体積を作りたい形状の表面を作成します。まだ中身がないスカスカの状態です。
[Modules]-[Geometry]-[Elementary entities]-[Add]-[Volume]を選択します。
表面が選択できるようになるので、表面の破線を選択します。選択された表面(の破線)は赤くなるので、体積を作りたい領域を囲むように表面を選択します。(表面が連続することが明らかな場合は自動で選択されます)
領域を囲んだらキーボード「e」で決定します。領域中心付近に黄色い丸が現れ、体積ができました。
キーボード「q」で終了します。
表面(破線)や体積(黄色丸)が現れない場合
デフォルトの設定では、表面(破線)や体積(黄色丸)が表示されないかもしれません。その場合はオプションを変更します。[Tools]-[Options]を選択すると、オプション画面が表示されるので、 [Geometry]-[Visibility] を選択し、SurfacesやVolumesにチェックを入れます。オプション画面を閉じると表面や体積が表示されるようになります。
以上が、Gmshのインストールから最低限の3Dモデル作成の流れとなります。複雑な形状では一つ一つ点を打ってはいられないので、BoxやCylinder、Extrude、Boolean、外部ファイルの読み込みなどを駆使することになります。それぞれの詳細は別途書いていこうと思います。