OBJファイルから3D空間へ
前回、前々回で3D空間上に線と面を描画するやり方と工夫を学ぶことができました。例では、ほんの十数個だったので手作業でできました。
今回は、複雑な立体を扱う上で立体情報が書かれているOBJファイルを用いることで、数百個、数千個の情報を一気に扱えるようにしていきます。
この記事は、第108.5話??? 【グラフ計算機/Desmos】 をテキスト化したものです。
やりたいこと
OBJファイルの情報をDesmosに埋め込みたい。ですが、Desmosは直接のOBJファイルのサポートをしていないので、ファイルを変換する必要があります。
OBJファイルに書かれている文字を調整して、Desmosのテーブルに埋め込みます。
OBJファイルは通常以下のような形式を持ちます。
v 1 1 0 v 1 -1 0 v -1 1 0 v -1 -1 0 l 1 2 l 2 3 l 3 4 l 4 1 f 1 2 4 # 1/1/1 2/2/2 4/4/4のような形も f 2 3 4
これを、Desmosのテーブルとして埋め込むのに
1 \tab 1 \tab 0 1 \tab -1 \tab 0 -1 \tab 1 \tab 0 -1 \tab -1 \tab 0
1 \tab 2 2 \tab 3 3 \tab 4 4 \tab 1
1 \tab 2 \tab 4 2 \tab 3 \tab 4
の3つを用意します。本来、\tab
部分はタブ空白が挿入され、これをコピペすると自動でDesmosテーブルに変換されます。
このデータインポートの仕様については【第93.5話】Desmosグラフ計算機にデータをインポート【グラフ計算機/Desmos】 にて紹介しています。
ファイルの変換
ほかの例
Tyrcnexさんが作成したObj To Desmosのwebアプリでは、テーブル形式ではなく、頂点 , 面 バージョンがあります。
点のリストとして書かれた状態で出力されるので、テーブルの編集が必要ありません。
Tyrcnex's Obj2Desmos
it includes parsing for obj and mtl files, as well as some additional settings