本日は MeshLab の小ネタ枠です。
MeshLabによる3Dデータ変換をCUIで実行する手順を記事にします。
前提条件
MeshLab のインストールを前提とします。
以下の記事を参考に MeshLab のインストールを実施してください。
bluebirdofoz.hatenablog.com
コマンドラインでの実行
MeshLab の3Dデータ変換をCUIで実行するにはインストールディレクトリにある以下の実行ファイルを利用します。
・meshlabserver.exe
デフォルトでは以下のディレクトリにインストールされています。
C:\Program Files\VCG\MeshLab
meshlabserver.exe の利用方法は exe をコマンドライン上で実行する事で確認できます。
以下に翻訳したものを記述します。
meshlabserver [ログ引数] [引数] [ログ引数]の指定オプション: -d filename すべてのフィルタリング関数のリストをテキストファイルにダンプする -l filename フィルターのログがファイルに出力されます [引数]の指定オプション: -p filename ロードするmeshlabプロジェクト(.mlp)を指定する。 -w filename [-x] 保存する出力Meshlabプロジェクト(.mlp)を指定する。 -xフラグを指定すると、入力プロジェクトに含まれている3Dモデルの meshfile.ext が上書きされます。 それ以外の場合は、meshfile_out.ext という新しいファイルと同じ入力メッシュのディレクトリに保存されます。 すべてのメッシュ属性が保存されたファイルにエクスポートされます。 -i filename ロードするメッシュデータを指定する。 -o filename [-l <opt_layer>][-m <opt_mask>] プロジェクトの現在のレイヤーを書き込むファイルを指定します。 -l パラメーターが設定されている場合、指定したレイヤーは指定したファイルに保存されます。 <opt_layer> の有効な値は次のとおりです。 [0~(プロジェクトの最後のレイヤー番号)] はインデックスで目的のレイヤーを指定します。 c はプロジェクトの現在のレイヤーを指定します。 x はプロジェクトの最後のレイヤーを示します。 -l paramが指定されていない場合、デフォルトで現在のレイヤーが保存されます。 -m パラメーターが設定されている場合、指定されたメッシュ属性が出力ファイルに保存されます <opt_mask>には、次の属性をスペースで区切ったリストで指定することができます。 vc->頂点カラー vf->頂点フラグ vq->頂点品質 vn->頂点法線 vt->頂点テクスチャ座標 vr->頂点半径 fc->面の色 ff->面フラグ fq->面の品質 fn->面法線 wc->ウェッジの色 wn->ウェッジ法線、 wt->ウェッジのテクスチャ座標 mp->ポリゴンメッシュ情報 sa->ascii形式で保存 -s filename 適用するスクリプトを指定します。
実行例
例えば、特定の3Dファイルを読み込んで別の形式で出力するには以下のようにコマンドを実行します。
・MeshLab.bat
set PATH=%PATH%;C:\Program Files\VCG\MeshLab meshlabserver.exe -i (読み込み3Dファイルパス) -o (書き出し3Dファイルパス)