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

Weitere ähnliche Inhalte

Andere mochten auch

OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
Fumiya Nozaki
 
Of tutorials v2.3.1 (1)
Of tutorials v2.3.1 (1)Of tutorials v2.3.1 (1)
Of tutorials v2.3.1 (1)
Etsuji Nomura
 
Motor bike by cfmesh
Motor bike by cfmeshMotor bike by cfmesh
Motor bike by cfmesh
Etsuji Nomura
 
Dynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAMDynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAM
Fumiya Nozaki
 

Andere mochten auch (20)

Code_Saturne流体解析入門講習会 講習会資料
Code_Saturne流体解析入門講習会 講習会資料Code_Saturne流体解析入門講習会 講習会資料
Code_Saturne流体解析入門講習会 講習会資料
 
オープンCAEをはじめよう!構造解析編
オープンCAEをはじめよう!構造解析編オープンCAEをはじめよう!構造解析編
オープンCAEをはじめよう!構造解析編
 
オープンCAEをはじめよう! 環境構築編 ver.2015
オープンCAEをはじめよう! 環境構築編 ver.2015オープンCAEをはじめよう! 環境構築編 ver.2015
オープンCAEをはじめよう! 環境構築編 ver.2015
 
流体解析入門者向け超初級講習会
流体解析入門者向け超初級講習会流体解析入門者向け超初級講習会
流体解析入門者向け超初級講習会
 
オープンCAEをはじめよう!入門編 ver.2015
オープンCAEをはじめよう!入門編 ver.2015オープンCAEをはじめよう!入門編 ver.2015
オープンCAEをはじめよう!入門編 ver.2015
 
Minecraft で遊びつつ プログラミングを学ぼう ~ ComputerCraft のすすめ ~
Minecraft で遊びつつ プログラミングを学ぼう ~ ComputerCraft のすすめ ~Minecraft で遊びつつ プログラミングを学ぼう ~ ComputerCraft のすすめ ~
Minecraft で遊びつつ プログラミングを学ぼう ~ ComputerCraft のすすめ ~
 
OpenFOAMと風洞実験~オープンCAE勉強会@関西の取組み~
OpenFOAMと風洞実験~オープンCAE勉強会@関西の取組み~OpenFOAMと風洞実験~オープンCAE勉強会@関西の取組み~
OpenFOAMと風洞実験~オープンCAE勉強会@関西の取組み~
 
OpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズOpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズ
 
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
 
Boundary Conditions in OpenFOAM
Boundary Conditions in OpenFOAMBoundary Conditions in OpenFOAM
Boundary Conditions in OpenFOAM
 
How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)How to install Dexcs2015 for OpenFOAM(R)
How to install Dexcs2015 for OpenFOAM(R)
 
Of tutorials 2.3
Of tutorials 2.3Of tutorials 2.3
Of tutorials 2.3
 
Of tutorials v2.3.1 (1)
Of tutorials v2.3.1 (1)Of tutorials v2.3.1 (1)
Of tutorials v2.3.1 (1)
 
Motor bike by cfmesh
Motor bike by cfmeshMotor bike by cfmesh
Motor bike by cfmesh
 
how to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAMhow to install Dexcs2016 for OpenFOAM
how to install Dexcs2016 for OpenFOAM
 
2016 01 bubble_column
2016 01 bubble_column2016 01 bubble_column
2016 01 bubble_column
 
流体解析入門者向け超初級講習会@関東 修正版
流体解析入門者向け超初級講習会@関東 修正版流体解析入門者向け超初級講習会@関東 修正版
流体解析入門者向け超初級講習会@関東 修正版
 
Dynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAMDynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAM
 
OpenFOAM-2.3.0の 全チュートアリアル・ベンチマーク
OpenFOAM-2.3.0の 全チュートアリアル・ベンチマークOpenFOAM-2.3.0の 全チュートアリアル・ベンチマーク
OpenFOAM-2.3.0の 全チュートアリアル・ベンチマーク
 
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
 

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