O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

MinecraftでOpenFOAM計算用メッシュを作成する

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio

Confira estes a seguir

1 de 56 Anúncio

Mais Conteúdo rRelacionado

Quem viu também gostou (20)

Mais recentes (20)

Anúncio

MinecraftでOpenFOAM計算用メッシュを作成する

  1. 1. Minecraftで計算用メッシュ を作成する 第47回オープンCAE勉強会@関西 @mmer547
  2. 2. メッシュ作成までの流れ snappyHexMeshでメッシュ作成 MinewaysによるSTLファイル作成 Minecraft上でのスクリプトの実行 自動建築用Pythonスクリプトの作成 Raspberryjammodの入手 MincraftForgeの導入 Minecraftの入手
  3. 3. Minecraftの入手 入手するには ココをクリック
  4. 4. Minecraftの入手 指示に沿って入力し、購入する。
  5. 5. インストーラの起動 Nextをクリック
  6. 6. インストール場所の指定 Nextをクリック
  7. 7. インストール確認 Installをクリック
  8. 8. インストールの完了 Finishをクリック
  9. 9. ランチャーへのログイン 購入時に入力したメール アドレスとパスワードを入力し、 LogInをクリック
  10. 10. ランチャーの起動~プロフィールの変更 Edit Profileを選択します。
  11. 11. バージョンの指定 バージョンは1.8系にしておく バージョンを変更したら SaveProfileをクリック
  12. 12. 起動 Playを押して起動します。
  13. 13. タイトル画面 Singleplayerをクリックします。
  14. 14. 新しい世界の創造 Create New Worldをクリック
  15. 15. ワールドの作成 World Nameを入力します。 入力が終わったらCreate New Worldをクリックします。 Game ModeはCreativeに します。他のモードだと ゾンビなどに攻撃されます。
  16. 16. プレイ画面 動作を確認します。 W:前進 A:左移動 S:右移動 D:後退 E:インベントリを開く(重要) マウス移動:視点移動 マウス左クリック:攻撃 Spaceキー:ジャンプ
  17. 17. Minecraftの終了 動作を確認したら Escキーを押してメニューを 表示しSave and Quit to Title をクリックしてゲームを やめます。
  18. 18. Modの導入:MincraftForgeのサイトに行く PythonスクリプトなどModと呼ばれる 拡張機能を導入するために MinecraftForgeを入手します。 MinecraftForgeで検索すれば すぐにサイトが見つかります。 (やたらと広告が多いので注意)
  19. 19. Forgeの入手 先ほど動作テストをしたときに 設定した正式版のバージョン と同じバージョンを選択する。 ダウンロードはWindows版は Installer winを選択する。 (MacはInstallerを選択)
  20. 20. ダウンロードページ トラップ広告が多いので注意 右上のSKIPをクリックする。 するとダウンロードが始まる。
  21. 21. インストーラの起動 Install clientを選択する。 OKをクリックする。 インストーラーをクリックして起動する。
  22. 22. Forgeのプロフィーへの反映 ランチャーを起動し EditProfileをクリックします。
  23. 23. GameDirectoryとUseVersionの指定 Jsonファイルがあるフォルダを 指定する。 インストーラの最初の画面で 指定しているフォルダにある GameDirectoryをforgeのインストールフォルダに設定する。 UseVersionをforgeと 書いてあるものに変更する
  24. 24. 起動! Playをクリックして起動する。
  25. 25. Forge導入の確認 タイトル画面意Modsと 出ていれば導入完了
  26. 26. Pythonスクリプト実行用raspberryjammodの入手 https://github.com/arpruss/raspberryjammodにアクセスする。 Releasesをクリックします。
  27. 27. Python scriptの実行環境とraspberryJamModの入手 この三つを ダウンロードする (Pythonのほうは 自分の使うバージョンに合わせて どちらかだけ)
  28. 28. RaspberryJamModの導入 Forge導入時のGame Directory下にあるmod フォルダに先ほどダウンロードした raspberryJamModのjarファイルを保存する。
  29. 29. Minecraftを起動 ランチャーを起動して Playをクリック
  30. 30. Minecraftの開始 Modsを選択
  31. 31. Modの確認 ModListにRaspberry Jam Mod が登録されているか確認する。
  32. 32. NewWorldの作成 動作検証時と同じ手順で NewWorldを作成し、 ゲームを起動する。
  33. 33. インベントリを開いてスクリプトを受付ける キーボードのEキーを押して インベントリを開きます。 Minecraftはウィンドウを切り 替えると、Escキーのメニュー が表示され、スクリプトの実行 が出来なくなります。インベントリを開いている間は 別ウィンドウでの作業も出来て、 スクリプトの実行も通ります。
  34. 34. Pythonスクリプトの準備 raspberryJamModと一緒にダウンロードして きたPythonのファイルを解答します。 解答後のフォルダにあるmcpiフォルダと同じ階層 にPythonスクリプトは保存するようにしてください。
  35. 35. サンプルファイルの使用 購入時に入力したメール アドレスとパスワードを入力し、 LogInをクリック
  36. 36. gf_clearZone.pyの中身 ブロックを置くメソッド .setBlocks(x0,y0,z0,x1,y1,z1,blockType, blockData) blockAirは空気ブロックと 呼ばれるもので、これで 埋められた領域はなにもない 状態と同じになります。
  37. 37. コマンドプロンプトで実行 Mcipyフォルダ内のスクリプトを実行する。 (実行方法は通常のPythonスクリプトと同じ)
  38. 38. 実行結果 スクリプトで指定した領域が 空気ブロックで埋められ、 何もなくなっている。
  39. 39. サンプルを流用してスクリプトを作成 gf_clearZone.pyをコピーして gf_clearZone_100.pyを作成 clearZoneを(-100,- 100,100,100)に変更する
  40. 40. gf_clearZone_100.pyの実行 gf_clearZone_100.pyを実行
  41. 41. さらに広い領域がさら地に
  42. 42. OFblockcreate ブロック構築データを リストで定義。 XYZ方向に対して リストをベースに ブロックを配置
  43. 43. Ofblockcreateの実行
  44. 44. 実行結果 Ofblockcreateに入力していた リストの通りブロックが配置されている。 メモ:後のSTL出力時に 土台部分がないと 出力できないので 1ブロック分の 土台を作ります。 ブロックの設置が終わったら Escキーを押してメニューからセーブして ゲームを終了します。
  45. 45. STLを出力するMinewaysの入手 Minewaysのサイトに行き 左にあるダウンロードアイコンを クリックしてダウンロードする。
  46. 46. Minewaysの起動 ダウンロードしたファイルを解答し、 中にあるMineways.exeをクリック
  47. 47. Minecraftファイルのロード File->Openを選択する。
  48. 48. level.datの選択 ForgeのGameDirectory下にある savesフォルダにlevel.datファイルが あるので選択して開く。
  49. 49. Mineways上でのWorldの表示 Minewaysでは読み込んだ level.datの世界をトップビュー で眺められる。
  50. 50. 出力領域の指定 Lower depthはPython スクリプトで指定した地面に 高さに合わせておく。 出力領域を決めたら File->Export for3D Printingを 選択する 左クリックドラッグで出力したい 領域を選択できる。 選択した領域は紫色で示される。 Max heightはPythonスクリプトで作成した 形状の高さより高い数値にしておく
  51. 51. ファイルの保存 ファイル名を入力して 保存をクリック
  52. 52. STLファイルについての設定 1ブロックあたりの大きさを変更できる 出力する範囲は ここでも指定できる。 設定が出来たらOKをクリック
  53. 53. FreeCADで確認 モデルは正常に出力できている。
  54. 54. 作成した形状で計算 • InterFoam • TotalTime:3sec • ΔT:0.001sec • Cell数:993045 • 水-空気で計算
  55. 55. 計算結果
  56. 56. まとめ • 導入自体が少し煩雑 • Pythonでの自動建築はAPI1つでとりあえず出来る。 • より複雑な形状を自動建築する場合は、工夫がいりそう。 (画像解析による濃淡でモデルの高さを読み取るコードの作成等)

×